/** do we need this? */ private NameSpace getNonBlockParent() { NameSpace parent = super.getParent(); if ( parent instanceof BlockNameSpace ) return ((BlockNameSpace)parent).getNonBlockParent(); else return parent; }
/** Get a 'this' reference is our parent's 'this' for the object closure. e.g. Normally a 'this' reference to a BlockNameSpace (e.g. if () { } ) resolves to the parent namespace (e.g. the namespace containing the "if" statement). @see #getBlockThis( Interpreter ) */ public This getThis( Interpreter declaringInterpreter ) { return getNonBlockParent().getThis( declaringInterpreter ); }
/** super is our parent's super */ public This getSuper( Interpreter declaringInterpreter ) { return getNonBlockParent().getSuper( declaringInterpreter ); }
/** super is our parent's super */ public This getSuper( Interpreter declaringInterpreter ) { return getNonBlockParent().getSuper( declaringInterpreter ); }
/** do we need this? */ private NameSpace getNonBlockParent() { NameSpace parent = super.getParent(); if ( parent instanceof BlockNameSpace ) return ((BlockNameSpace)parent).getNonBlockParent(); else return parent; }
/** Get a 'this' reference is our parent's 'this' for the object closure. e.g. Normally a 'this' reference to a BlockNameSpace (e.g. if () { } ) resolves to the parent namespace (e.g. the namespace containing the "if" statement). @see #getBlockThis( Interpreter ) */ public This getThis( Interpreter declaringInterpreter ) { return getNonBlockParent().getThis( declaringInterpreter ); }