Add a filter to filter the resources we should iterate over.

@param string $column
@param string $operator
@param mixed $value
@return ResourceCollection
438931
public function addFilter($column, $operator, $value)
    {
        $this->filter->addFilter($column, $operator, $value);
        return $this;
    }
140366
public function orWhere($column, $operator, $value, $filter = false)
    {
        return $this->createConstraint(' OR', $column, $operator, $value, $filter);
    }
132882
public function havingYear($column, $operator, $value = null)
    {
        $this->hConditions()->year(...func_get_args());

        return $this;
    }
517846
public function orWhere($column, $value, $operator = self::OPERATOR_EQ): self
    {
        $this->criteria($this->where, $column, $value, $operator, self::LOGICAL_OR);

        return $this;
    }
746956
public function havingMonth($column, $operator, $value = null)
    {
        $this->hConditions()->month(...func_get_args());

        return $this;
    }
16814
public function where($key, $value, $operator = '==')
    {
        return $this->filter(function ($item) use ($key, $operator, $value) {
            $item = (array)$item;
            $retrieved = isset($item[$key]) ? $item[$key] : null;
            switch ($operator) {
                default:
                case '=':
                case '==':  return $retrieved == $value;
                case '!=':
                case '<>':  return $retrieved != $value;
                case '<':   return $retrieved < $value;
                case '>':   return $retrieved > $value;
                case '<=':  return $retrieved <= $value;
                case '>=':  return $retrieved >= $value;
                case '===': return $retrieved === $value;
                case '!==': return $retrieved !== $value;
            }
        });
    }
605907
public function addFilter($field, $value, $operator= '=')
    {
        $this->filter[] = [
          'field' => $field,
          'value' => $value,
          'operator' => $operator,
        ];
        
        return $this;
    }
380358
public function where($column, $operator = null, $value = null)
    {
        if ($column instanceof Closure) {
            return $this->whereNested('and', $column);
        }

        $constraint = call_user_func_array(
            [Constraint::class, 'where'],
            func_get_args()
        );

        return $this->addConstraint($constraint);
    }
568700
public function where(string $column, $value, $operator = self::OPERATOR_EQ, $connector = self::LOGICAL_AND): self
    {
        $this->criteria($this->where, $column, $value, $operator, $connector);

        return $this;
    }
1053544
public function orHavingDate($column, $operator, $value = null)
    {
        $this->hConditions()->orDate(...func_get_args());

        return $this;
    }
1272260
public function having($column, $operator, $value = null)
    {
        $instance = $this->havingStrategyInstance();

        $instance->havingStrategy()->having(...func_get_args());

        return $instance;
    }
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;
	}
1006494
public function orWhere($column, $operator = null, $value = null)
    {
        return $this->where($column, $operator, $value, 'or');
    }
131560
public function orHaving($column, $value, $operator = self::EQUALS, $quote = null)
    {
        return $this->orCriteria($this->having, $column, $value, $operator, self::LOGICAL_OR, $quote);
    }
464089
public function where($column, $operator, $value = null)
    {
        $instance = $this->whereStrategyInstance();

        $instance->whereStrategy()->where(...func_get_args());

        return $instance;
    }
116107
public function orWhereDay($column, $operator, $value = null)
    {
        $this->wConditions()->orDay(...func_get_args());

        return $this;
    }
65281
public function orHaving($column, $operator = null, $value = null)
    {
        return $this->having($column, $operator, $value, 'or');
    }