RuleSymbol.java
上传用户:afrynkmhm
上传日期:2007-01-06
资源大小:1262k
文件大小:1k
- package antlr;
- /* ANTLR Translator Generator
- * Project led by Terence Parr at http://www.jGuru.com
- * Software rights: http://www.antlr.org/RIGHTS.html
- *
- * $Id: //depot/code/org.antlr/release/antlr-2.7.0/antlr/RuleSymbol.java#1 $
- */
- import antlr.collections.impl.Vector;
- class RuleSymbol extends GrammarSymbol {
- RuleBlock block; // list of alternatives
- boolean defined; // has the rule been defined yet?
- Vector references; // list of all nodes referencing this rule
- // not strictly needed by generic symbol table
- // but we will almost always analyze/gen code
- String access; // access specifier for this rule
- String comment; // A javadoc comment if any.
-
- public RuleSymbol(String r) {
- super(r);
- references = new Vector();
- }
- public void addReference(RuleRefElement e) {
- references.appendElement(e);
- }
- public RuleBlock getBlock() {
- return block;
- }
- public RuleRefElement getReference(int i) {
- return (RuleRefElement)references.elementAt(i);
- }
- public boolean isDefined() {
- return defined;
- }
- public int numReferences() {
- return references.size();
- }
- public void setBlock(RuleBlock rb) {
- block = rb;
- }
- public void setDefined() {
- defined = true;
- }
- }