macro ex_timestwo(x)
:($(esc(x))*2)
end
@ex_timestwo(4)
8
macroexpand(:(@ex_timestwo(4)))
:(4 * 2)
@ex_timestwo(a)
LoadError: UndefVarError: a not defined
macroexpand(:(@ex_timestwo(a)))
:(a * 2)
macro n_timestwo(x)
x*2
end
@n_timestwo(4)
8
macroexpand(:(@n_timestwo(4)))
8
@n_timestwo(a)
LoadError: MethodError: no method matching *(::Symbol, ::Int64)
macroexpand(:(@n_timestwo(a)))
:($(Expr(:error, MethodError(*,(:a,2)))))
a = 6
@ex_timestwo(a)
a = 6
@n_timestwo(a)