Package org.antlr.analysis
Class ActionLabel
- java.lang.Object
-
- org.antlr.analysis.Label
-
- org.antlr.analysis.ActionLabel
-
-
Field Summary
Fields Modifier and Type Field Description GrammarASTactionAST-
Fields inherited from class org.antlr.analysis.Label
ACTION, DOWN, EOF, EOR_TOKEN_TYPE, EOT, EPSILON, EPSILON_STR, INVALID, label, labelSet, MAX_CHAR_VALUE, MIN_ATOM_VALUE, MIN_CHAR_VALUE, MIN_TOKEN_TYPE, NUM_FAUX_LABELS, SEMPRED, SET, UP
-
-
Constructor Summary
Constructors Constructor Description ActionLabel(GrammarAST actionAST)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanisAction()booleanisEpsilon()java.lang.StringtoString()Predicates are lists of AST nodes from the NFA created from the grammar, but the same predicate could be cut/paste into multiple places in the grammar.java.lang.StringtoString(Grammar g)
-
-
-
Field Detail
-
actionAST
public GrammarAST actionAST
-
-
Constructor Detail
-
ActionLabel
public ActionLabel(GrammarAST actionAST)
-
-
Method Detail
-
toString
public java.lang.String toString()
Description copied from class:LabelPredicates are lists of AST nodes from the NFA created from the grammar, but the same predicate could be cut/paste into multiple places in the grammar. I must compare the text of all the predicates to truly answer whether {p1,p2} .equals {p1,p2}. Unfortunately, I cannot rely on the AST.equals() to work properly so I must do a brute force O(n^2) nested traversal of the Set doing a String compare. At this point, Labels are not compared for equals when they are predicates, but here's the code for future use.
-
-