Exemple #1
0
        internal virtual void EvaluatePending(QCandidate a_root, QPending a_pending, int
                                              a_secondResult)
        {
            bool res = i_evaluator.Not(i_and ? ((a_pending._result + a_secondResult) > 0) : (
                                           a_pending._result + a_secondResult) > QPending.False);

            if (HasJoins())
            {
                IEnumerator i = IterateJoins();
                while (i.MoveNext())
                {
                    Db4objects.Db4o.Internal.Query.Processor.QConJoin qcj = (Db4objects.Db4o.Internal.Query.Processor.QConJoin
                                                                             )i.Current;
                    a_root.Evaluate(new QPending(qcj, this, res));
                }
            }
            else
            {
                if (!res)
                {
                    Constraint1().DoNotInclude(a_root);
                    Constraint2().DoNotInclude(a_root);
                }
            }
        }
Exemple #2
0
 internal virtual void EvaluatePending(QCandidate a_root, QPending a_pending, int
     a_secondResult)
 {
     var res = i_evaluator.Not(i_and
         ? ((a_pending._result + a_secondResult) > 0)
         : (
             a_pending._result + a_secondResult) > QPending.False);
     if (HasJoins())
     {
         var i = IterateJoins();
         while (i.MoveNext())
         {
             var qcj = (QConJoin
                 ) i.Current;
             a_root.Evaluate(new QPending(qcj, this, res));
         }
     }
     else
     {
         if (!res)
         {
             Constraint1().DoNotInclude(a_root);
             Constraint2().DoNotInclude(a_root);
         }
     }
 }
Exemple #3
0
 internal override bool Evaluate(QCandidate a_candidate)
 {
     try
     {
         return(a_candidate.Evaluate(this, i_evaluator));
     }
     catch (Exception e)
     {
         return(false);
     }
 }
Exemple #4
0
 internal virtual void Visit1(QCandidate root, Db4objects.Db4o.Internal.Query.Processor.QCon
                              reason, bool res)
 {
     // The a_reason parameter makes it eays to distinguish
     // between calls from above (a_reason == this) and below.
     if (HasJoins())
     {
         // this should probably be on the Join
         IEnumerator i = IterateJoins();
         while (i.MoveNext())
         {
             root.Evaluate(new QPending((QConJoin)i.Current, this, res));
         }
     }
     else
     {
         if (!res)
         {
             DoNotInclude(root);
         }
     }
 }
Exemple #5
0
		internal override bool Evaluate(QCandidate a_candidate)
		{
			try
			{
				return a_candidate.Evaluate(this, i_evaluator);
			}
			catch (Exception e)
			{
				return false;
			}
		}
Exemple #6
0
		internal virtual void Visit1(QCandidate root, Db4objects.Db4o.Internal.Query.Processor.QCon
			 reason, bool res)
		{
			// The a_reason parameter makes it eays to distinguish
			// between calls from above (a_reason == this) and below.
			if (HasJoins())
			{
				// this should probably be on the Join
				IEnumerator i = IterateJoins();
				while (i.MoveNext())
				{
					root.Evaluate(new QPending((QConJoin)i.Current, this, res));
				}
			}
			else
			{
				if (!res)
				{
					DoNotInclude(root);
				}
			}
		}