コード例 #1
0
ファイル: Node.cs プロジェクト: yell0wc0w2/botbuilder-dotnet
        internal Node(Clause clause, TriggerTree tree, Trigger trigger = null)
        {
            // In order to debug:
            // 1) Enable Count and VerifyTree
            // 2) Run your scenario
            // 3) You will most likely get a break on the error.
            // 4) Enable TraceTree and set it here to get the trace before count
            // Node._count has the global count for breakpoint
            // ShowTrace = _count > 280000;

            Clause = new Clause(clause);  // Drop ignored from node clause
            Tree   = tree;
            if (trigger != null)
            {
                _allTriggers.Add(trigger);
                _triggers.Add(trigger);
            }
        }
コード例 #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Trigger"/> class.
 /// Construct a trigger expression.
 /// </summary>
 /// <param name="tree">Trigger tree that contains this trigger.</param>
 /// <param name="expression">Expression for when the trigger action is possible.</param>
 /// <param name="action">Action to take when a trigger matches.</param>
 /// <param name="quantifiers">Quantifiers to dynamically expand the expression.</param>
 internal Trigger(TriggerTree tree, Expression expression, object action, params Quantifier[] quantifiers)
 {
     _tree              = tree;
     Action             = action;
     OriginalExpression = expression;
     _quantifiers       = quantifiers;
     if (expression != null)
     {
         var normalForm = expression.PushDownNot();
         _clauses = GenerateClauses(normalForm).ToList();
         RemoveDuplicatedPredicates();
         OptimizeClauses();
         ExpandQuantifiers();
         RemoveDuplicates();
         MarkSubsumedClauses();
         SplitIgnores();
     }
     else
     {
         _clauses = new List <Clause>();
     }
 }
コード例 #3
0
 public Debugger(TriggerTree triggers)
 {
     TreeString = triggers.TreeToString();
     Optimizers = triggers.Optimizers;
     Comparers  = triggers.Comparers;
 }