You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
932 B
36 lines
932 B
package com.fr.third.antlr; |
|
|
|
/* ANTLR Translator Generator |
|
* Project led by Terence Parr at http://www.cs.usfca.edu |
|
* Software rights: http://www.antlr.org/license.html |
|
* |
|
* $Id: //depot/code/org.antlr/release/antlr-2.7.7/antlr/TreeElement.java#2 $ |
|
*/ |
|
|
|
/** A TreeElement is a block with one alternative and a root node */ |
|
class TreeElement extends AlternativeBlock { |
|
GrammarAtom root; |
|
|
|
public TreeElement(Grammar g, Token start) { |
|
super(g, start, false); |
|
} |
|
|
|
public void generate() { |
|
grammar.generator.gen(this); |
|
} |
|
|
|
public Lookahead look(int k) { |
|
return grammar.theLLkAnalyzer.look(k, this); |
|
} |
|
|
|
public String toString() { |
|
String s = " #(" + root; |
|
Alternative a = (Alternative)alternatives.elementAt(0); |
|
AlternativeElement p = a.head; |
|
while (p != null) { |
|
s += p; |
|
p = p.next; |
|
} |
|
return s + " )"; |
|
} |
|
}
|
|
|