org.deri.iris.compiler
Class TreeWalker
java.lang.Object
DepthFirstAdapter
org.deri.iris.compiler.TreeWalker
public class TreeWalker
- extends DepthFirstAdapter
Traverses the abstract syntax tree generated by SableCC and constructs
the components of a logic program, i.e. facts, rules and queries.
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TreeWalker
public TreeWalker(BuiltinRegister builtinRegister)
getFacts
public Map<IPredicate,IRelation> getFacts()
getRuleBase
public List<IRule> getRuleBase()
getQueries
public List<IQuery> getQueries()
inALitlist
public void inALitlist(ALitlist l)
inALiteral
public void inALiteral(ALiteral l)
inAPredicate
public void inAPredicate(APredicate arg0)
inABuiltinLiteral
public void inABuiltinLiteral(ABuiltinLiteral l)
inANegatedLiteral
public void inANegatedLiteral(ANegatedLiteral l)
inANegatedbuiltinLiteral
public void inANegatedbuiltinLiteral(ANegatedbuiltinLiteral l)
inAFunctionTerm
public void inAFunctionTerm(AFunctionTerm t)
inAFact
public void inAFact(AFact f)
inAQuery
public void inAQuery(AQuery q)
inARule
public void inARule(ARule r)
outARule
public void outARule(ARule r)
outAFact
public void outAFact(AFact f)
outAQuery
public void outAQuery(AQuery _q)
outANegatedLiteral
public void outANegatedLiteral(ANegatedLiteral _l)
outANegatedbuiltinLiteral
public void outANegatedbuiltinLiteral(ANegatedbuiltinLiteral arg0)
outABinaryBuiltin
public void outABinaryBuiltin(ABinaryBuiltin b)
outAEqualsBuiltin
public void outAEqualsBuiltin(AEqualsBuiltin b)
outATernaryBuiltin
public void outATernaryBuiltin(ATernaryBuiltin b)
outAPredicate
public void outAPredicate(APredicate p)
outAVarTerm
public void outAVarTerm(AVarTerm v)
outAFunctionTerm
public void outAFunctionTerm(AFunctionTerm ft)
outAStringTerm
public void outAStringTerm(AStringTerm st)
outAStringlTerm
public void outAStringlTerm(AStringlTerm st)
outAIntegerTerm
public void outAIntegerTerm(AIntegerTerm it)
outAIntegerlTerm
public void outAIntegerlTerm(AIntegerlTerm it)
outADecimalTerm
public void outADecimalTerm(ADecimalTerm dt)
outADecimallTerm
public void outADecimallTerm(ADecimallTerm dt)
outASqnameTerm
public void outASqnameTerm(ASqnameTerm st)
outASqnamelTerm
public void outASqnamelTerm(ASqnamelTerm st)
outAIriTerm
public void outAIriTerm(AIriTerm i)
outAIrilTerm
public void outAIrilTerm(AIrilTerm i)
outABooleanTerm
public void outABooleanTerm(ABooleanTerm b)
outADoubleTerm
public void outADoubleTerm(ADoubleTerm d)
outAFloatTerm
public void outAFloatTerm(AFloatTerm f)
outABase64binaryTerm
public void outABase64binaryTerm(ABase64binaryTerm b)
outAHexbinaryTerm
public void outAHexbinaryTerm(AHexbinaryTerm h)
outADateTerm
public void outADateTerm(ADateTerm d)
outADatetzTerm
public void outADatetzTerm(ADatetzTerm d)
outATimeisTerm
public void outATimeisTerm(ATimeisTerm t)
outATimeistzTerm
public void outATimeistzTerm(ATimeistzTerm t)
outATimefsTerm
public void outATimefsTerm(ATimefsTerm t)
outATimefstzTerm
public void outATimefstzTerm(ATimefstzTerm t)
outATimemsTerm
public void outATimemsTerm(ATimemsTerm t)
outATimemstzTerm
public void outATimemstzTerm(ATimemstzTerm t)
outADurationisTerm
public void outADurationisTerm(ADurationisTerm d)
outADurationfsTerm
public void outADurationfsTerm(ADurationfsTerm d)
outADurationmsTerm
public void outADurationmsTerm(ADurationmsTerm d)
outADatetimeisTerm
public void outADatetimeisTerm(ADatetimeisTerm d)
outADatetimeistzTerm
public void outADatetimeistzTerm(ADatetimeistzTerm d)
outADatetimefsTerm
public void outADatetimefsTerm(ADatetimefsTerm d)
outADatetimefstzTerm
public void outADatetimefstzTerm(ADatetimefstzTerm d)
outADatetimemsTerm
public void outADatetimemsTerm(ADatetimemsTerm d)
outADatetimemstzTerm
public void outADatetimemstzTerm(ADatetimemstzTerm d)
outADaytimedurationfsTerm
public void outADaytimedurationfsTerm(ADaytimedurationfsTerm node)
outADaytimedurationmsTerm
public void outADaytimedurationmsTerm(ADaytimedurationmsTerm node)
outAYearmonthdurationTerm
public void outAYearmonthdurationTerm(AYearmonthdurationTerm node)
outAGyearTerm
public void outAGyearTerm(AGyearTerm g)
outAGmonthTerm
public void outAGmonthTerm(AGmonthTerm g)
outAGdayTerm
public void outAGdayTerm(AGdayTerm g)
outAGyearmonthTerm
public void outAGyearmonthTerm(AGyearmonthTerm g)
outAGmonthdayTerm
public void outAGmonthdayTerm(AGmonthdayTerm g)
outARdftextTerm
public void outARdftextTerm(ARdftextTerm node)
outAXmlliteralTerm
public void outAXmlliteralTerm(AXmlliteralTerm node)
outAXmlliterallangTerm
public void outAXmlliterallangTerm(AXmlliterallangTerm node)