Example #1
0
 public override void VisitAfter(NotPredicate notPredicate)
 {
     if (IsPlaceHolderPredicate(notPredicate.Operand))
     {
         notPredicate.Operand = PlaceInNot((PlaceHolderPredicate)notPredicate.Operand);
     }
 }
Example #2
0
 public override void VisitAfter(NotPredicate notPredicate)
 {
     if (this.IsNotInMainResultsSource())
     {
         return;
     }
     --_notNestLevel;
 }
Example #3
0
        public override void VisitOnElsIf(IfStmt ifStmt, int ifThenIndex, int offset)
        {
            if (_topIfStmt != ifStmt)
            {
                return;
            }

            // ELSE(ELSIF)において、スタックの1番上の式を否定し、これをスタックに戻す
            var lastCondition    = _conditionStack.Pop();
            var lastNotCondition = new NotPredicate(this.EncloseIfNecessary(lastCondition));

            _conditionStack.Push(lastNotCondition);

            // IFにおいて条件式をスタックにPUSHする
            _conditionStack.Push(this.EncloseIfNecessary(ifStmt.Conditions[ifThenIndex]));
        }
Example #4
0
        public override void VisitOnElse(IfStmt ifStmt, int offset)
        {
            if (_topIfStmt != ifStmt)
            {
                return;
            }

            // ELSE(ELSIF)において、スタックの1番上の式を否定し、これをスタックに戻す
            var lastCondition    = _conditionStack.Pop();
            var lastNotCondition = new NotPredicate(this.EncloseIfNecessary(lastCondition));

            _conditionStack.Push(lastNotCondition);

            // 条件式とSQL文をリストに格納する
            _conditions.Add(this.ConcatConditions(_conditionStack));
            _stmtsList.Add(this.RemoveNullStmt(ifStmt.ElseStatements));
        }
Example #5
0
 virtual public void VisitAfter(NotPredicate notPredicate)
 {
 }
Example #6
0
 virtual public void VisitBefore(NotPredicate notPredicate)
 {
 }
 public override void VisitAfter(NotPredicate notPredicate)
 {
 }
Example #8
0
 public override void VisitAfter(NotPredicate notPredicate)
 {
     --_predicateLevel;
 }
Example #9
0
 public override void VisitBefore(NotPredicate notPredicate)
 {
     ++_predicateLevel;
 }
 public void VisitAfter(NotPredicate notPredicate)
 {
     _visitor.VisitAfter(notPredicate);
 }
 public void VisitBefore(NotPredicate notPredicate)
 {
     _visitor.VisitBefore(notPredicate);
 }