This method is called when this CallFrame is no longer needed.
/// Removes the reference of this object from the interpreter so
/// that this object can be garbage collected.
///
/// For this procedure to work correctly, it must not be possible
/// for any of the variable in the table to be accessed from Tcl
/// commands (e.g. from trace procedures).
///
protected internal void dispose()
{
// Unchain this frame from the call stack.
interp.frame = caller;
interp.varFrame = callerVar;
caller = null;
callerVar = null;
if ( varTable != null )
{
Var.deleteVars( interp, varTable );
varTable.Clear();
varTable = null;
}
}
}
}