expression.pattern.accept(this);
expression.value.accept(this);
expression.in.accept(this);
+ if(expression.monadEvidence != null)
+ visit(expression.monadEvidence);
}
@Override
public void visit(ELet expression) {
for(Assignment assignment : expression.assignments)
visit(assignment);
+ expression.in.accept(this);
}
public void visit(Assignment assignment) {
visit(rule.head);
visit(rule.body);
}
+ for(IncludeStatement include : ruleset.includes)
+ include.value.accept(this);
}
@Override
public void visit(CHRAstNegation query) {
query.subquery.accept(this);
}
+
+ @Override
+ public void visit(EAmbiguous expression) {
+ if(expression.resolvedExpression != null)
+ expression.resolvedExpression.accept(this);
+ }
}