// $ANTLR start "argument_list" // AnnotationParser.g:78:1: argument_list : ( PARAM_START ( arguments )? PARAM_END )? -> ^( // ARGUMENT_LIST ( arguments )? ) ; public final AnnotationParser.argument_list_return argument_list() throws RecognitionException { AnnotationParser.argument_list_return retval = new AnnotationParser.argument_list_return(); retval.start = input.LT(1); AnnotationCommonTree root_0 = null; CommonToken PARAM_START4 = null; CommonToken PARAM_END6 = null; AnnotationParser.arguments_return arguments5 = null; AnnotationCommonTree PARAM_START4_tree = null; AnnotationCommonTree PARAM_END6_tree = null; RewriteRuleTokenStream stream_PARAM_START = new RewriteRuleTokenStream(adaptor, "token PARAM_START"); RewriteRuleTokenStream stream_PARAM_END = new RewriteRuleTokenStream(adaptor, "token PARAM_END"); RewriteRuleSubtreeStream stream_arguments = new RewriteRuleSubtreeStream(adaptor, "rule arguments"); try { // AnnotationParser.g:79:3: ( ( PARAM_START ( arguments )? PARAM_END )? -> ^( ARGUMENT_LIST ( // arguments )? ) ) // AnnotationParser.g:79:5: ( PARAM_START ( arguments )? PARAM_END )? { // AnnotationParser.g:79:5: ( PARAM_START ( arguments )? PARAM_END )? int alt2 = 2; int LA2_0 = input.LA(1); if ((LA2_0 == PARAM_START)) { alt2 = 1; } switch (alt2) { case 1: // AnnotationParser.g:79:6: PARAM_START ( arguments )? PARAM_END { PARAM_START4 = (CommonToken) match(input, PARAM_START, FOLLOW_PARAM_START_in_argument_list122); stream_PARAM_START.add(PARAM_START4); // AnnotationParser.g:79:18: ( arguments )? int alt1 = 2; int LA1_0 = input.LA(1); if ((LA1_0 == JSON_START || LA1_0 == STRING || LA1_0 == STRING_LITERAL)) { alt1 = 1; } switch (alt1) { case 1: // AnnotationParser.g:79:18: arguments { pushFollow(FOLLOW_arguments_in_argument_list124); arguments5 = arguments(); state._fsp--; stream_arguments.add(arguments5.getTree()); } break; } PARAM_END6 = (CommonToken) match(input, PARAM_END, FOLLOW_PARAM_END_in_argument_list127); stream_PARAM_END.add(PARAM_END6); } break; } // AST REWRITE // elements: arguments // token labels: // rule labels: retval // token list labels: // rule list labels: // wildcard labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval = new RewriteRuleSubtreeStream( adaptor, "rule retval", retval != null ? retval.tree : null); root_0 = (AnnotationCommonTree) adaptor.nil(); // 80:5: -> ^( ARGUMENT_LIST ( arguments )? ) { // AnnotationParser.g:80:8: ^( ARGUMENT_LIST ( arguments )? ) { AnnotationCommonTree root_1 = (AnnotationCommonTree) adaptor.nil(); root_1 = (AnnotationCommonTree) adaptor.becomeRoot( (AnnotationCommonTree) adaptor.create(ARGUMENT_LIST, "ARGUMENT_LIST"), root_1); // AnnotationParser.g:80:24: ( arguments )? if (stream_arguments.hasNext()) { adaptor.addChild(root_1, stream_arguments.nextTree()); } stream_arguments.reset(); adaptor.addChild(root_0, root_1); } } retval.tree = root_0; } retval.stop = input.LT(-1); retval.tree = (AnnotationCommonTree) adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input, re); retval.tree = (AnnotationCommonTree) adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; }
// $ANTLR start "annotation" // AnnotationParser.g:72:1: annotation : AT ann_class argument_list -> ^( ANNOTATION ann_class // argument_list ) ; public final AnnotationParser.annotation_return annotation() throws RecognitionException { AnnotationParser.annotation_return retval = new AnnotationParser.annotation_return(); retval.start = input.LT(1); AnnotationCommonTree root_0 = null; CommonToken AT1 = null; AnnotationParser.ann_class_return ann_class2 = null; AnnotationParser.argument_list_return argument_list3 = null; AnnotationCommonTree AT1_tree = null; RewriteRuleTokenStream stream_AT = new RewriteRuleTokenStream(adaptor, "token AT"); RewriteRuleSubtreeStream stream_argument_list = new RewriteRuleSubtreeStream(adaptor, "rule argument_list"); RewriteRuleSubtreeStream stream_ann_class = new RewriteRuleSubtreeStream(adaptor, "rule ann_class"); try { // AnnotationParser.g:73:3: ( AT ann_class argument_list -> ^( ANNOTATION ann_class // argument_list ) ) // AnnotationParser.g:73:5: AT ann_class argument_list { AT1 = (CommonToken) match(input, AT, FOLLOW_AT_in_annotation90); stream_AT.add(AT1); pushFollow(FOLLOW_ann_class_in_annotation92); ann_class2 = ann_class(); state._fsp--; stream_ann_class.add(ann_class2.getTree()); pushFollow(FOLLOW_argument_list_in_annotation94); argument_list3 = argument_list(); state._fsp--; stream_argument_list.add(argument_list3.getTree()); // AST REWRITE // elements: argument_list, ann_class // token labels: // rule labels: retval // token list labels: // rule list labels: // wildcard labels: retval.tree = root_0; RewriteRuleSubtreeStream stream_retval = new RewriteRuleSubtreeStream( adaptor, "rule retval", retval != null ? retval.tree : null); root_0 = (AnnotationCommonTree) adaptor.nil(); // 74:5: -> ^( ANNOTATION ann_class argument_list ) { // AnnotationParser.g:74:7: ^( ANNOTATION ann_class argument_list ) { AnnotationCommonTree root_1 = (AnnotationCommonTree) adaptor.nil(); root_1 = (AnnotationCommonTree) adaptor.becomeRoot( (AnnotationCommonTree) adaptor.create(ANNOTATION, "ANNOTATION"), root_1); adaptor.addChild(root_1, stream_ann_class.nextTree()); adaptor.addChild(root_1, stream_argument_list.nextTree()); adaptor.addChild(root_0, root_1); } } retval.tree = root_0; } retval.stop = input.LT(-1); retval.tree = (AnnotationCommonTree) adaptor.rulePostProcessing(root_0); adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); } catch (RecognitionException re) { reportError(re); recover(input, re); retval.tree = (AnnotationCommonTree) adaptor.errorNode(input, retval.start, input.LT(-1), re); } finally { } return retval; }