1 package antlr; 2 3 /* ANTLR Translator Generator 4 * Project led by Terence Parr at http://www.cs.usfca.edu 5 * Software rights: http://www.antlr.org/license.html 6 * 7 * $Id: //depot/code/org.antlr/release/antlr-2.7.7/antlr/ANTLRGrammarParseBehavior.java#2 $ 8 */ 9 10 import antlr.collections.impl.BitSet; 11 12 public interface ANTLRGrammarParseBehavior { abortGrammar()13 public void abortGrammar(); 14 beginAlt(boolean doAST_)15 public void beginAlt(boolean doAST_); 16 beginChildList()17 public void beginChildList(); 18 19 // Exception handling beginExceptionGroup()20 public void beginExceptionGroup(); 21 beginExceptionSpec(Token label)22 public void beginExceptionSpec(Token label); 23 beginSubRule(Token label, Token start, boolean not)24 public void beginSubRule(Token label, Token start, boolean not); 25 26 // Trees beginTree(Token tok)27 public void beginTree(Token tok) throws SemanticException; 28 defineRuleName(Token r, String access, boolean ruleAST, String docComment)29 public void defineRuleName(Token r, String access, boolean ruleAST, String docComment) throws SemanticException; 30 defineToken(Token tokname, Token tokliteral)31 public void defineToken(Token tokname, Token tokliteral); 32 endAlt()33 public void endAlt(); 34 endChildList()35 public void endChildList(); 36 endExceptionGroup()37 public void endExceptionGroup(); 38 endExceptionSpec()39 public void endExceptionSpec(); 40 endGrammar()41 public void endGrammar(); 42 endOptions()43 public void endOptions(); 44 endRule(String r)45 public void endRule(String r); 46 endSubRule()47 public void endSubRule(); 48 endTree()49 public void endTree(); 50 hasError()51 public void hasError(); 52 noASTSubRule()53 public void noASTSubRule(); 54 oneOrMoreSubRule()55 public void oneOrMoreSubRule(); 56 optionalSubRule()57 public void optionalSubRule(); 58 refAction(Token action)59 public void refAction(Token action); 60 refArgAction(Token action)61 public void refArgAction(Token action); 62 setUserExceptions(String thr)63 public void setUserExceptions(String thr); 64 refCharLiteral(Token lit, Token label, boolean inverted, int autoGenType, boolean lastInRule)65 public void refCharLiteral(Token lit, Token label, boolean inverted, int autoGenType, boolean lastInRule); 66 refCharRange(Token t1, Token t2, Token label, int autoGenType, boolean lastInRule)67 public void refCharRange(Token t1, Token t2, Token label, int autoGenType, boolean lastInRule); 68 refElementOption(Token option, Token value)69 public void refElementOption(Token option, Token value); 70 refTokensSpecElementOption(Token tok, Token option, Token value)71 public void refTokensSpecElementOption(Token tok, Token option, Token value); 72 refExceptionHandler(Token exTypeAndName, Token action)73 public void refExceptionHandler(Token exTypeAndName, Token action); 74 refHeaderAction(Token name, Token act)75 public void refHeaderAction(Token name, Token act); 76 refInitAction(Token action)77 public void refInitAction(Token action); 78 refMemberAction(Token act)79 public void refMemberAction(Token act); 80 refPreambleAction(Token act)81 public void refPreambleAction(Token act); 82 refReturnAction(Token returnAction)83 public void refReturnAction(Token returnAction); 84 refRule(Token idAssign, Token r, Token label, Token arg, int autoGenType)85 public void refRule(Token idAssign, Token r, Token label, Token arg, int autoGenType); 86 refSemPred(Token pred)87 public void refSemPred(Token pred); 88 refStringLiteral(Token lit, Token label, int autoGenType, boolean lastInRule)89 public void refStringLiteral(Token lit, Token label, int autoGenType, boolean lastInRule); 90 refToken(Token assignId, Token t, Token label, Token args, boolean inverted, int autoGenType, boolean lastInRule)91 public void refToken(Token assignId, Token t, Token label, Token args, 92 boolean inverted, int autoGenType, boolean lastInRule); 93 refTokenRange(Token t1, Token t2, Token label, int autoGenType, boolean lastInRule)94 public void refTokenRange(Token t1, Token t2, Token label, int autoGenType, boolean lastInRule); 95 96 // Tree specifiers refTreeSpecifier(Token treeSpec)97 public void refTreeSpecifier(Token treeSpec); 98 refWildcard(Token t, Token label, int autoGenType)99 public void refWildcard(Token t, Token label, int autoGenType); 100 setArgOfRuleRef(Token argaction)101 public void setArgOfRuleRef(Token argaction); 102 setCharVocabulary(BitSet b)103 public void setCharVocabulary(BitSet b); 104 105 // Options setFileOption(Token key, Token value, String filename)106 public void setFileOption(Token key, Token value, String filename); 107 setGrammarOption(Token key, Token value)108 public void setGrammarOption(Token key, Token value); 109 setRuleOption(Token key, Token value)110 public void setRuleOption(Token key, Token value); 111 setSubruleOption(Token key, Token value)112 public void setSubruleOption(Token key, Token value); 113 startLexer(String file, Token name, String superClass, String doc)114 public void startLexer(String file, Token name, String superClass, String doc); 115 116 // Flow control for grammars startParser(String file, Token name, String superClass, String doc)117 public void startParser(String file, Token name, String superClass, String doc); 118 startTreeWalker(String file, Token name, String superClass, String doc)119 public void startTreeWalker(String file, Token name, String superClass, String doc); 120 synPred()121 public void synPred(); 122 zeroOrMoreSubRule()123 public void zeroOrMoreSubRule(); 124 } 125