public override object CreateNewInstance(SelectItem item) { Debug.Assert(item.Value is NamedRule); NamedRule namedRule = item.Value as NamedRule; return(InvokeNamedRule.Create(namedRule.Path)); }
public void ReportFailure(NamedRule rule) { //WriteLine($"- {rule.Name}"); Head.Success = false; var node = stack.Pop(); if (node.Name == RuleName.Implicit) { @implicit = false; } }
public void ReportSuccess(NamedRule rule, string text) { Head.Success = true; var node = stack.Pop(); WriteLine($@"+ {rule.Name} {text}"); if (node.Name == RuleName.Implicit) { @implicit = false; } }
public void ReportHypothesis(NamedRule rule, int?index) { if (rule.Name == RuleName.Implicit) { @implicit = true; } WriteLine($"? {rule.Name}", index ?? -1); var node = new Node(rule.Name); Head.Add(node); stack.Push(node); }
public void DefineRule(string name, Rule rule) { //var last = rule.Children.LastOrDefault(); AssertIsNotLocked(); if (name == RuleName.Root) { rule = rule.And(new NameRule(this, this, RuleName.Implicit)); } var named = new NamedRule(this, Super, name, rule); rules.Add(name, named); }
protected override DynamicValue Execute(CodeActivityContext context) { RuleExecutingContext executingContext = context.GetExtension <RuleExecutingContext>(); Debug.Assert(executingContext != null); RuleManager ruleManager = executingContext.RuleManager; NamedRule rule = ruleManager.GetNamedRule(RulePath); if (rule == null) { throw new ArgumentException(String.Format(Properties.Resources.NamedRuleNotExist, RulePath)); } IDictionary <string, object> parameters = executingContext.GetWorkflowInvokerArguments(); return(ruleManager.InvokeRule <DynamicValue>(rule, parameters)); }
protected override void Execute(CodeActivityContext context) { RuleExecutingContext executingContext = context.GetExtension <RuleExecutingContext>(); Debug.Assert(executingContext != null); RuleManager ruleManager = executingContext.RuleManager; NamedRule rule = ruleManager.GetNamedRule(RulePath); if (rule == null) { return; } IDictionary <string, object> parameters = executingContext.GetWorkflowInvokerArguments(); ruleManager.InvokeRule(rule, parameters); }
public void RemoveNamedRule(NamedRule theOneToRemove) { _namedrules.Remove(theOneToRemove.Path); _activities.Remove(theOneToRemove.ActivityID); }
public void SetNamedRule(NamedRule namedRule, DynamicActivity workflow) { _namedrules[namedRule.Path] = namedRule; _activities[namedRule.ActivityID] = workflow; }
const string IllegalChars = "'"; // NOXLATE public NamedRuleContext(NamedRule namedRule, RulePointContext parentContext, RuleConfigContext ruleConfigContext) : this(namedRule.Name, parentContext, ruleConfigContext) { }