net.sourceforge.nrl.parser.ast.action.impl
Class ActionRuleDeclarationImpl

java.lang.Object
  extended by org.antlr.runtime.tree.BaseTree
      extended by org.antlr.runtime.tree.CommonTree
          extended by net.sourceforge.nrl.parser.ast.impl.Antlr3NRLBaseAst
              extended by net.sourceforge.nrl.parser.ast.impl.DeclarationImpl
                  extended by net.sourceforge.nrl.parser.ast.impl.SingleContextDeclarationImpl
                      extended by net.sourceforge.nrl.parser.ast.action.impl.ActionRuleDeclarationImpl
All Implemented Interfaces:
IActionRuleDeclaration, IDeclaration, INRLAstNode, IRuleDeclaration, ISingleContextDeclaration, org.antlr.runtime.tree.Tree

public class ActionRuleDeclarationImpl
extends SingleContextDeclarationImpl
implements IActionRuleDeclaration


Field Summary
 
Fields inherited from class org.antlr.runtime.tree.CommonTree
childIndex, parent, startIndex, stopIndex, token
 
Fields inherited from class org.antlr.runtime.tree.BaseTree
children
 
Fields inherited from interface net.sourceforge.nrl.parser.ast.INRLAstNode
NEWLINE
 
Fields inherited from interface org.antlr.runtime.tree.Tree
INVALID_NODE
 
Constructor Summary
ActionRuleDeclarationImpl(org.antlr.runtime.Token token)
           
 
Method Summary
 void accept(INRLAstVisitor visitor)
          Accept a visitor to this node.
 String dump(int indent)
          Deprecated. 
 IAction getAction()
          Get the rule action.
 String getId()
          Return the rule id.
 IRuleSetDeclaration getRuleSet()
          Return the rule set that the rule is contained in, if any.
 boolean hasContext()
          Indicate whether this action rule has a context, or only uses actions that do not require a context.
 void setRuleSet(IRuleSetDeclaration ruleSet)
          Set the rule set that this rule is contained in.
 
Methods inherited from class net.sourceforge.nrl.parser.ast.impl.SingleContextDeclarationImpl
areAdditionalParametersFullyResolved, getAdditionalParameterNames, getAdditionalParameterType, getAdditionalParameterTypeReference, getContext, getModelReference, initialiseAdditionalParametersFromAst, isOldContextFormat, setAdditionalParameterType, setContext
 
Methods inherited from class net.sourceforge.nrl.parser.ast.impl.Antlr3NRLBaseAst
doIndent, getColumn, getLine, getUserData, initialisePositionFromChild, setColumn, setLine, setUserData
 
Methods inherited from class org.antlr.runtime.tree.CommonTree
dupNode, getCharPositionInLine, getChildIndex, getParent, getText, getToken, getTokenStartIndex, getTokenStopIndex, getType, isNil, setChildIndex, setParent, setTokenStartIndex, setTokenStopIndex, setUnknownTokenBoundaries, toString
 
Methods inherited from class org.antlr.runtime.tree.BaseTree
addChild, addChildren, createChildrenList, deleteChild, freshenParentAndChildIndexes, freshenParentAndChildIndexes, getAncestor, getAncestors, getChild, getChildCount, getChildren, getFirstChildWithType, hasAncestor, replaceChildren, sanityCheckParentAndChildIndexes, sanityCheckParentAndChildIndexes, setChild, toStringTree
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface net.sourceforge.nrl.parser.ast.ISingleContextDeclaration
getAdditionalParameterNames, getAdditionalParameterType, getContext
 
Methods inherited from interface net.sourceforge.nrl.parser.ast.INRLAstNode
getColumn, getLine, getUserData, setUserData
 

Constructor Detail

ActionRuleDeclarationImpl

public ActionRuleDeclarationImpl(org.antlr.runtime.Token token)
Method Detail

accept

public void accept(INRLAstVisitor visitor)
Description copied from interface: INRLAstNode
Accept a visitor to this node.

Specified by:
accept in interface INRLAstNode
Overrides:
accept in class Antlr3NRLBaseAst
Parameters:
visitor - the visitor

dump

@Deprecated
public String dump(int indent)
Deprecated. 

Description copied from interface: INRLAstNode
Dump the AST and its children for debugging purposes

Specified by:
dump in interface INRLAstNode
Overrides:
dump in class Antlr3NRLBaseAst
Parameters:
indent - the indentation count, 0 on first call
Returns:
the AST as a string

getAction

public IAction getAction()
Description copied from interface: IActionRuleDeclaration
Get the rule action. Never returns null. The action is either a ICompoundAction or a IConditionalAction - see the grammar for more details.

Specified by:
getAction in interface IActionRuleDeclaration
Returns:
the action

getId

public String getId()
Description copied from interface: IDeclaration
Return the rule id. Never returns null.

Specified by:
getId in interface IDeclaration
Overrides:
getId in class DeclarationImpl
Returns:
the id

getRuleSet

public IRuleSetDeclaration getRuleSet()
Description copied from interface: IRuleDeclaration
Return the rule set that the rule is contained in, if any. If the rule is declared standalone, this returns null.

This can only be called once the AST has been fully resolved.

Specified by:
getRuleSet in interface IRuleDeclaration
Returns:
the rule set

hasContext

public boolean hasContext()
Description copied from interface: IActionRuleDeclaration
Indicate whether this action rule has a context, or only uses actions that do not require a context.

This will be true for most rules. For some, for example those that only use "create" or "select", a context is unnecessary and this will return false.

Calling ISingleContextDeclaration.getContext() on such a rule will return a reserved model object with no attriutes.

Specified by:
hasContext in interface IActionRuleDeclaration
Returns:
true if there is a context else false

setRuleSet

public void setRuleSet(IRuleSetDeclaration ruleSet)
Description copied from interface: IRuleDeclaration
Set the rule set that this rule is contained in.

Specified by:
setRuleSet in interface IRuleDeclaration
Parameters:
ruleSet - the rule set


Copyright © 2006-2013. All Rights Reserved.