public override bool Visit <T, TFact>(AddFactConsequence <T, TFact> consequence, Func <SemanticVisitor, bool> next) { _conditionCompiler.MatchJoinNode <T>(joinNode => { AddFactNode <T, TFact> node = _configurator.AddFact(consequence.FactFactory); joinNode.AddActivation(node); }); return(base.Visit(consequence, next)); }
public override bool Visit <T, TFact>(AddFactNode <T, TFact> node, Func <RuntimeVisitor, bool> next) { _current = _vertices.Get(node.Id, id => new Vertex(typeof(AddFactNode <,>), typeof(TFact), typeof(T).Tokens() + " \x279C " + typeof(TFact).GetShortName())); if (_stack.Count > 0) { _edges.Add(new Edge(_stack.Peek(), _current, _current.TargetType.Name)); } return(base.Visit(node, next)); }
public override bool Visit <T, TFact>(AddFactNode <T, TFact> node, Func <RuntimeVisitor, bool> next) { Append("AddFactProductionNode[{0}] => {1}", Tokens <T>(), typeof(TFact)); return(base.Visit(node, next)); }
public virtual bool Visit <T, TFact>(AddFactNode <T, TFact> node, Func <RuntimeVisitor, bool> next) where T : class where TFact : class { return(next(this)); }