Having found out about the second argument to Return
second argument to Return
I played a bit with it, and the following tests all resulted in Return::nofunc
:
f[x_]:=x
f[Return[3,f]]
SetAttributes[g,HoldAll];g[x_]:=x
g[Return[3,g]]
h[x_]:=f[x]
h[Return[3,f]]
SetAttributes[i,HoldAll];i[x_]:=f[x]
i[Return[3,f]]
On the other hand, the following works fine:
Module[{i},Return[3,Module]]
Does that mean the second argument of Return
can only be used with a predefined list of symbols? If so, is there an easy way to find out that list? Otherwise, what am I doing wrong (and how would I do it right)?