コード例 #1
0
        public virtual void Visit(object a_tree)
        {
            IInternalCandidate candidate = (IInternalCandidate)a_tree;

            if (candidate.Include())
            {
                AddKeyCheckDuplicates(candidate.Id());
            }
        }
コード例 #2
0
        public override void Visit(object obj)
        {
            IInternalCandidate candidate = (IInternalCandidate)obj;

            // force activation outside the try block
            // so any activation errors bubble up
            ForceActivation(candidate);
            try
            {
                Platform4.EvaluationEvaluate(i_evaluation, candidate);
            }
            catch (Exception)
            {
                candidate.Include(false);
            }
            // TODO: implement Exception callback for the user coder
            // at least for test cases
            if (!candidate.Include())
            {
                DoNotInclude(candidate.GetRoot());
            }
        }
コード例 #3
0
            public void Visit(object obj)
            {
                IInternalCandidate cand = (IInternalCandidate)obj;

                if (cand.Include())
                {
                    _innerRes.value = !_isNot;
                }
                // Collect all pending subresults.
                if (cand.PendingJoins() == null)
                {
                    return;
                }
                cand.PendingJoins().Traverse(new _IVisitor4_529(this));
            }