public final srecParser.method_call_param_return method_call_param() throws RecognitionException {
        srecParser.method_call_param_return retval = new srecParser.method_call_param_return();
        retval.start = input.LT(1);

        CommonTree root_0 = null;

        srecParser.literal_return literal26 = null;

        srecParser.method_call_or_varref_return method_call_or_varref27 = null;



        try {
            // /home/victor/srec/core/src/main/antlr/srec.g:71:2: ( literal | method_call_or_varref )
            int alt9=2;
            int LA9_0 = input.LA(1);

            if ( (LA9_0==STRING||(LA9_0>=NUMBER && LA9_0<=NULL)) ) {
                alt9=1;
            }
            else if ( (LA9_0==ID) ) {
                alt9=2;
            }
            else {
                if (state.backtracking>0) {state.failed=true; return retval;}
                NoViableAltException nvae =
                    new NoViableAltException("", 9, 0, input);

                throw nvae;
            }
            switch (alt9) {
                case 1 :
                    // /home/victor/srec/core/src/main/antlr/srec.g:71:4: literal
                    {
                    root_0 = (CommonTree)adaptor.nil();

                    pushFollow(FOLLOW_literal_in_method_call_param327);
                    literal26=literal();

                    state._fsp--;
                    if (state.failed) return retval;
                    if ( state.backtracking==0 ) adaptor.addChild(root_0, literal26.getTree());

                    }
                    break;
                case 2 :
                    // /home/victor/srec/core/src/main/antlr/srec.g:71:14: method_call_or_varref
                    {
                    root_0 = (CommonTree)adaptor.nil();

                    pushFollow(FOLLOW_method_call_or_varref_in_method_call_param331);
                    method_call_or_varref27=method_call_or_varref();

                    state._fsp--;
                    if (state.failed) return retval;
                    if ( state.backtracking==0 ) adaptor.addChild(root_0, method_call_or_varref27.getTree());

                    }
                    break;

            }
            retval.stop = input.LT(-1);

            if ( state.backtracking==0 ) {

            retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
            adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
    	retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);

        }
        finally {
        }
        return retval;
    }
public final srecParser . method_call_param_return method_call_param ( ) throws RecognitionException { srecParser . method_call_param_return retval = new srecParser . method_call_param_return ( ) ; retval . start = input . LT ( 1 ) ; CommonTree root_0 = null ; srecParser . literal_return literal26 = null ; srecParser . method_call_or_varref_return method_call_or_varref27 = null ; try { int alt9 = 2 ; int LA9_0 = input . LA ( 1 ) ; if ( ( LA9_0 == STRING || ( LA9_0 >= NUMBER && LA9_0 <= NULL ) ) ) { alt9 = 1 ; } else if ( ( LA9_0 == ID ) ) { alt9 = 2 ; } else { if ( state . backtracking > 0 ) { state . failed = true ; return retval ; } NoViableAltException nvae = new NoViableAltException ( "" , 9 , 0 , input ) ; throw nvae ; } switch ( alt9 ) { case 1 : { root_0 = ( CommonTree ) adaptor . nil ( ) ; pushFollow ( FOLLOW_literal_in_method_call_param327 ) ; literal26 = literal ( ) ; state . _fsp -- ; if ( state . failed ) return retval ; if ( state . backtracking == 0 ) adaptor . addChild ( root_0 , literal26 . getTree ( ) ) ; } break ; case 2 : { root_0 = ( CommonTree ) adaptor . nil ( ) ; pushFollow ( FOLLOW_method_call_or_varref_in_method_call_param331 ) ; method_call_or_varref27 = method_call_or_varref ( ) ; state . _fsp -- ; if ( state . failed ) return retval ; if ( state . backtracking == 0 ) adaptor . addChild ( root_0 , method_call_or_varref27 . getTree ( ) ) ; } break ; } retval . stop = input . LT ( - 1 ) ; if ( state . backtracking == 0 ) { retval . tree = ( CommonTree ) adaptor . rulePostProcessing ( root_0 ) ; adaptor . setTokenBoundaries ( retval . tree , retval . start , retval . stop ) ; } } catch ( RecognitionException re ) { reportError ( re ) ; recover ( input , re ) ; retval . tree = ( CommonTree ) adaptor . errorNode ( input , retval . start , input . LT ( - 1 ) , re ) ; } finally { } return retval ; }
/home/victor/srec/core/src/main/antlr/srec.g:70:1: method_call_param : ( literal | method_call_or_varref );