original_string: public function andWhere($bool = "must", array $params = []) {
          $callback = function(SubQueryBuilder $subQuery) use ($bool, $params) {
              return $this->_endChildSubQuery("and", $subQuery->toArray(), $bool, $params);
          };
          return SubQueryBuilder::make($callback);
      }
code: public function andWhere($bool = "must", array $params = []) {
          $callback = function(SubQueryBuilder $subQuery) use ($bool, $params) {
              return $this->_endChildSubQuery("and", $subQuery->toArray(), $bool, $params);
          };
          return SubQueryBuilder::make($callback);
      }
code_tokens: public function andWhere ( $ bool = "must" , array $ params = [ ] ) { $ callback = function ( SubQueryBuilder $ subQuery ) use ( $ bool , $ params ) { return $ this -> _endChildSubQuery ( "and" , $ subQuery -> toArray ( ) , $ bool , $ params ) ; } ; return SubQueryBuilder :: make ( $ callback ) ; }
docstring: Creates an AND filter subquery
  
  @param string $bool must, should, or must_not
  @param array $params extra params for and filter
  @return SubQueryBuilder
docstring_tokens: Creates an AND filter subquery