julia> macro foo(arg) return arg+1 end@foo (macro with 1 method)julia> @foo 9 # 有时需注意优先级10julia> @foo(9)10 macro wrap(ty,sy::Symbol) return :($sy(i::$ty)=$sy(i.wr)) end struct w wr end @wrap w foo foo(::Int)=1 println(foo(w(0)))