Пример #1
0
 public function rewrite(&$left, &$op, &$right, &$not)
 {
     if (count($this->values) == 1) {
         $right = new ValueExpr($this->values[0]);
         return;
     }
     $newops = array();
     foreach ($this->values as $value) {
         $classname = get_class($left);
         $class = new $classname();
         $newop = new OpExpr($class, $op, $value);
         $newops[] = $newop;
     }
     $result = $newops[0];
     for ($i = 1; $i < count($newops); $i++) {
         $result = new OpExpr($result, ExprOp::OP_OR, $newops[$i]);
     }
     $left = $result->left();
     $op = $result->op();
     $right = $result->right();
 }