import std;
void before()
{
writeln("Before");
}
void after()
{
writeln("After");
}
void add(int x, int y)
{
writeln(x + y);
}
template WrapCall(string call)
{
enum WrapCall = "before(); " ~ call ~ "; after();";
}
void main()
{
mixin WrapCall!"add(1, 2)";
}
This doesn't work, if I change it to mixin(WrapCall!"add(1, 2")),
it works, why?