9.7 Stringifying Macro Arguments
The construction ??Arg, where Arg is a macro argument, is expanded to a string containing the tokens of the argument. This is similar to the #arg stringifying construction in C.
Example:
- -define(TESTCALL(Call), io:format("Call ~s: ~w~n", [??Call, Call])).
- ?TESTCALL(myfunction(1,2)),
- ?TESTCALL(you:function(2,1)).
results in
- io:format("Call ~s: ~w~n",["myfunction ( 1 , 2 )",myfunction(1,2)]),
- io:format("Call ~s: ~w~n",["you : function ( 2 , 1 )",you:function(2,1)]).
That is, a trace output, with both the function called and the resulting value.