The global pseudo-variable thisFunctionDef
always evaluates to the current enclosing FunctionDef.
See also: thisFunction
Even though it is possible to change the values in the various arrays that define the FunctionDef, you should not do it, unless you like to crash.
Get the byte code array.
{ |a = 9, b = 10, c| a + b }.def.code;
Get the source code string.
{ |a = 9, b = 10, c| a + b }.def.sourceCode.postcs;
Get the enclosing FunctionDef or Method.
return a list of all references to a given symbol.
Get the Array of Symbols of the argument names.
{ |a = 9, b = 10, c| a + b }.def.argNames;
Get the array of default values for argument and temporary variables.
{ |a = 9, b = 10, c| a + b }.def.prototypeFrame;
Get the Array of Symbols of the local variable names.
{ |a = 9, b = 10, c| var x = 9; a + b + x }.def.varNames;
Return a string that contains arguments and their default values for embedding in a string
{ |a = 9, b = 10, c| a + b }.def.argumentString;
Get the Array of Symbols of the local variable names.
{ |a = 9, b = 10, c| a + b }.def.makeEnvirFromArgs;
"Disassemble" and post the FunctionDef's byte code instructions to the text window.