code: public function where($key, $operator, $value=null, $boolean=Queryable::AND_)
      {
  
          if ($value !== null) {
              $this->key = $key;
              $this->operator = $operator;
              $this->value = $value;
              $this->bool = $boolean;
              return $this;
          }
  
          if (is_array($operator)) {
              $this->key = $key;
              $this->operator = 'in';
              $this->value = $operator;
              $this->bool = $boolean;
              return $this;
          }
  
          $this->key = $key;
          $this->operator = '=';
          $this->value = $operator;
          $this->bool = $boolean;
          return $this;
  
      }
docs: {@inheritdoc} Sets all values and returns itself
  
  @param string $key
  @param string $operator
  @param mixed $value
  @param string $boolean
  @return self