Example #1
0
 public void Activate(RuleContext <T> context)
 {
     if (_rightActivation.RightActivate(context))
     {
         context.EnqueueAgendaAction(0, () => _successors.Activate(context));
     }
 }
Example #2
0
        public void Activate(RouteContext <TContext> context, string value)
        {
            // right activate our join partner
            _rightActivation.RightActivate(context, x =>
            {
                // we were matched, so add our node to the right activation network
                context.AddRightActivation(_id);

                // add activation of our children to the agenda for execution
                context.AddAction(() => Next(context, value));
            });
        }
Example #3
0
        public void Activate(ActivationContext <TLeft> context)
        {
            _rightActivation.RightActivate(context, right =>
            {
                ActivationContext <Tuple <TLeft, TRight> > joinContext =
                    context.CreateContext(new Tuple <TLeft, TRight>(context.Fact, right.Fact));

                base.Activate(joinContext);

                return(true);
            });
        }
Example #4
0
 public void Activate(RoutingContext <T> context)
 {
     _rightActivation.RightActivate(context, match => _betaMemory.Activate(match));
 }
Example #5
0
 public void Activate(ActivationContext <Token <T, TDiscard> > context)
 {
     _rightActivation.RightActivate(context.Fact.Item1, match => base.Activate(context.Fact.Item1));
 }
Example #6
0
 public override void Activate(ActivationContext <T> context)
 {
     _rightActivation.RightActivate(context, match => base.Activate(context));
 }
Example #7
0
        public bool RightActivate(RuleContext <T> context)
        {
            RightActivation <T> betaMemory = context.GetBetaMemory(GetHashCode(), () => new BetaMemory <T>(_successors));

            return(betaMemory.RightActivate(context));
        }