public static Object removeVariable ( PageContext pc , String var ) throws PageException { // print.ln("var:"+var); StringList list = parse ( pc , new ParserString ( var ) , false ) ; if ( list == null ) throw new InterpreterException ( "invalid variable declaration [" + var + "]" ) ; if ( list . size ( ) == 1 ) { return pc . undefinedScope ( ) . remove ( KeyImpl . init ( list . next ( ) ) ) ; } int scope = scopeString2Int ( pc . ignoreScopes ( ) , list . next ( ) ) ; Object coll ; if ( scope == Scope . SCOPE_UNDEFINED ) { coll = pc . undefinedScope ( ) . get ( list . current ( ) ) ; } else { coll = VariableInterpreter . scope ( pc , scope , true ) ; // coll=pc.scope(scope); } while ( list . hasNextNext ( ) ) { coll = pc . get ( coll , list . next ( ) ) ; } return Caster . toCollection ( coll ) . remove ( KeyImpl . init ( list . next ( ) ) ) ; }
removes a variable eith matching name from page context