where method, if params count is 2 then op be value

@param  mixed  $where
@param  string $op
@param  mixed  $value
@return static
511647
public function where($where, $op=null, $value=null)
    {
        if ($where) {
            if (is_array($where)) {
                $this->set('where', $where);
            } elseif (!is_null($op)) {
                if (!is_null($value)) {
                    $value = [$op, $value];
                } else {
                    $value  = $op;
                }
                
                $this->set('where', [$where => $value]);
            } else {
                $this->set('where', $where);
            }
        }
        
        return $this;
    }
534068
public function where($field, $operator, $value = null)
    {
        if (func_num_args() === 2)
            $new = [$field, '=', $operator];
        else
            $new = func_get_args();

        $this->condition[0][] = $new;

        return $this;
    }
930337
public function orWhere($field, $op, $value)
    {
        $this->pending['where'][] = array(
            'type'  => 'or',
            'field' => $field,
            'op'    => $op,
            'value' => $value,
        );

        return $this;
    }
931497
public function where(Expr $where)
    {
        if ($where instanceof Parameter && $where == Expr::true()) {
            return $this;
        }

        if ($where instanceof BinOp && $where->getOperator() === BinOp::AND_) {
            $this->where($where->getLeft());
            $this->where($where->getRight());
        } else {
            $this->where[] = $where;
        }

        return $this;
    }
778298
public function where($field, $op, $value)
    {
        $this->pending['where'][] = array(
            'type'  => 'and',
            'field' => $field,
            'op'    => $op,
            'value' => $value,
        );

        return $this;
    }
1165105
public function orWhere($field, $operator = null, $value = null)
    {
        $this->addOrWhere($field, $operator, $value);

        return $this;
    }
1106516
protected function queryByOp($column, $op, $value)
    {
        switch ($op) {
            case 'eq':
                return $this->andWhere($column . ' = ?', $value);

            case 'ct':
                return $this->whereContains($column, $value);

            case 'ge':
                return $this->andWhere($column . ' >= ?', $value);

            case 'le':
                return $this->andWhere($column . ' <= ?', $this->processMaxDate($column, $value));

            case 'gt':
                return $this->andWhere($column . ' > ?', $value);

            case 'lt':
                return $this->andWhere($column . ' < ?', $this->processMaxDate($column, $value));

            case 'hs':
                return $this->whereHas($column, $value);

            default:
                return $this;
        }
    }
539406
public function where($column, $operator, $value, $filter = false)
    {
        return $this->constraint(__FUNCTION__, $column, $operator, $value, $filter);
    }
109678
public function whereBetween($field, array $params, string $op = ''): self
    {
        return $this->where($this->prepareField($field) .' BETWEEN ? AND ?', $params, $op);
    }
902478
public function or_where($column, $op = null, $value = null)
	{
		if($column instanceof \Closure)
		{
			$this->or_where_open();
			$column($this);
			$this->or_where_close();
			return $this;
		}

		if (is_array($column))
		{
			foreach ($column as $key => $val)
			{
				if (is_array($val))
				{
					$this->or_where($val[0], $val[1], $val[2]);
				}
				else
				{
					$this->or_where($key, '=', $val);
				}
			}
		}
		else
		{
			if(func_num_args() === 2)
			{
				$value = $op;
				$op = '=';
			}
			$this->_where[] = array('OR' => array($column, $op, $value));
		}
		return $this;
	}
1205730
public function where($key, $value = true, $operator = '=')
    {
        return $this->addCondition($key, $value, $operator, 'where');
    }
792423
public function where($column, $operator = null, $value = null, $boolean = 'and')
	{
		if ($column instanceof Closure)
		{
			$query = $this->model->newQuery();

			call_user_func($column, $query);

			$this->query->addNestedWhereQuery($query->getQuery(), $boolean);
		}
		else
		{
			$this->query->where($column, $operator, $value, $boolean);
		}

		return $this;
	}
394097
public function addWhere($where, $params = [], $operator = 'AND')
    {
        if ($where instanceof Criteria) {
            return $this->addCriteria($where);
        }
        if (null === $where) {
            return $this;
        }
        if (isset($this->query['where']) && !empty($this->query['where'])) {
            $operator = strtoupper($operator);
            $where = "({$this->query['where']}) {$operator} ({$where})";
        }
        $this->query['where'] = $where;
        $this->addParams($params);
        return $this;
    }
253128
public function whereId(string $field, $id, string $op = ''): self
    {
        return $this->where('?? = ?', [$field, $id], $op);
    }
748981
public function andWhere($field, $op, $value)
    {
        $this->where($field, $op, $value);

        return $this;
    }
664725
public function whereCmp($field, $operator, $value)
    {
        foreach ($this->queries as $query) {
            $query->whereCmp($field, $operator, $value);
        }

        return $this;
    }
605839
public function whereNotIn($where, $value)
    {
        if( !is_array($value) ) {
            $value = (array) $value;
        }
        if( count($value) <= 0 ) {
            $this->where[] = array(new Expression('TRUE'));
        } else {
            $this->where[] = array($where, $value, 'NOT IN');
        }
        return $this;
    }