antlr.preprocessor

Class Rule


(package private) class Rule
extends Object

Field Summary

protected String
args
protected boolean
bang
protected String
block
protected Grammar
enclosingGrammar
protected String
initAction
protected String
name
protected IndexedVector
options
protected String
returnValue
protected String
throwsSpec
protected String
visibility

Constructor Summary

Rule(String n, String b, IndexedVector options, Grammar gr)

Method Summary

String
getArgs()
boolean
getBang()
String
getName()
String
getReturnValue()
String
getVisibility()
boolean
narrowerVisibility(Rule rule)
If 'rule' narrows the visible of 'this', return true; For example, 'this' is public and 'rule' is private, true is returned.
boolean
sameSignature(Rule rule)
Two rules have the same signature if they have: same name same return value same args I do a simple string compare now, but later the type could be pulled out so it is insensitive to names of args etc...
void
setArgs(String a)
void
setBang()
void
setEnclosingGrammar(Grammar g)
void
setInitAction(String a)
void
setOptions(IndexedVector options)
void
setReturnValue(String ret)
void
setThrowsSpec(String t)
void
setVisibility(String v)
String
toString()

Field Details

args

protected String args


bang

protected boolean bang


block

protected String block


enclosingGrammar

protected Grammar enclosingGrammar


initAction

protected String initAction


name

protected String name


options

protected IndexedVector options


returnValue

protected String returnValue


throwsSpec

protected String throwsSpec


visibility

protected String visibility

Constructor Details

Rule

public Rule(String n,
            String b,
            IndexedVector options,
            Grammar gr)

Method Details

getArgs

public String getArgs()


getBang

public boolean getBang()


getName

public String getName()


getReturnValue

public String getReturnValue()


getVisibility

public String getVisibility()


narrowerVisibility

public boolean narrowerVisibility(Rule rule)
If 'rule' narrows the visible of 'this', return true; For example, 'this' is public and 'rule' is private, true is returned. You cannot narrow the vis. of a rule.


sameSignature

public boolean sameSignature(Rule rule)
Two rules have the same signature if they have: same name same return value same args I do a simple string compare now, but later the type could be pulled out so it is insensitive to names of args etc...


setArgs

public void setArgs(String a)


setBang

public void setBang()


setEnclosingGrammar

public void setEnclosingGrammar(Grammar g)


setInitAction

public void setInitAction(String a)


setOptions

public void setOptions(IndexedVector options)


setReturnValue

public void setReturnValue(String ret)


setThrowsSpec

public void setThrowsSpec(String t)


setVisibility

public void setVisibility(String v)


toString

public String toString()