final public TsurgeonPattern NodeSelection ( ) throws ParseException { /*@bgen(jjtree) NodeSelection */ SimpleNode jjtn000 = new SimpleNode ( JJTNODESELECTION ) ; boolean jjtc000 = true ; jjtree . openNodeScope ( jjtn000 ) ; TsurgeonPattern result ; try { result = NodeName ( ) ; jjtree . closeNodeScope ( jjtn000 , true ) ; jjtc000 = false ; { if ( true ) return result ; } } catch ( Throwable jjte000 ) { if ( jjtc000 ) { jjtree . clearNodeScope ( jjtn000 ) ; jjtc000 = false ; } else { jjtree . popNode ( ) ; } if ( jjte000 instanceof RuntimeException ) { { if ( true ) throw ( RuntimeException ) jjte000 ; } } if ( jjte000 instanceof ParseException ) { { if ( true ) throw ( ParseException ) jjte000 ; } } { if ( true ) throw ( Error ) jjte000 ; } } finally { if ( jjtc000 ) { jjtree . closeNodeScope ( jjtn000 , true ) ; } } throw new Error ( "Missing return statement in function" ) ; }
we ll also put in a way to use a SELECTION with a list of nodes .