original_string: public function and_($conditions, $types = [])
      {
          if ($this->isCallable($conditions)) {
              return $conditions(new static([], $this->getTypeMap()->setTypes($types)));
          }
  
          return new static($conditions, $this->getTypeMap()->setTypes($types));
      }
code: public function and_($conditions, $types = [])
      {
          if ($this->isCallable($conditions)) {
              return $conditions(new static([], $this->getTypeMap()->setTypes($types)));
          }
  
          return new static($conditions, $this->getTypeMap()->setTypes($types));
      }
code_tokens: public function and_ ( $ conditions , $ types = [ ] ) { if ( $ this -> isCallable ( $ conditions ) ) { return $ conditions ( new static ( [ ] , $ this -> getTypeMap ( ) -> setTypes ( $ types ) ) ) ; } return new static ( $ conditions , $ this -> getTypeMap ( ) -> setTypes ( $ types ) ) ; }
docstring: Returns a new QueryExpression object containing all the conditions passed
  and set up the conjunction to be "AND"
  
  @param callable|string|array|\Cake\Database\ExpressionInterface $conditions to be joined with AND
  @param array $types associative array of fields pointing to the type of the
  values that are being passed. Used for correctly binding values to statements.
  @return \Cake\Database\Expression\QueryExpression
docstring_tokens: Returns a new QueryExpression object containing all the conditions passed and set up the conjunction to be AND