original_string: public function index($columns, $name = null, $whereClause = '', $ignoreIfExist = false, $defer = false)
      {
          $name = (is_null($name)) ? $this->getTable() . "_secondary_index" : $name;
  
          return $this->connection->openBucket($this->getTable())
              ->manager()->createN1qlIndex(
                  $name,
                  $columns,
                  $whereClause,
                  $ignoreIfExist,
                  $defer
              );
      }
code: public function index($columns, $name = null, $whereClause = '', $ignoreIfExist = false, $defer = false)
      {
          $name = (is_null($name)) ? $this->getTable() . "_secondary_index" : $name;
  
          return $this->connection->openBucket($this->getTable())
              ->manager()->createN1qlIndex(
                  $name,
                  $columns,
                  $whereClause,
                  $ignoreIfExist,
                  $defer
              );
      }
code_tokens: public function index ( $ columns , $ name = null , $ whereClause = '' , $ ignoreIfExist = false , $ defer = false ) { $ name = ( is_null ( $ name ) ) ? $ this -> getTable ( ) . "_secondary_index" : $ name ; return $ this -> connection -> openBucket ( $ this -> getTable ( ) ) -> manager ( ) -> createN1qlIndex ( $ name , $ columns , $ whereClause , $ ignoreIfExist , $ defer ) ; }
docstring: Specify a secondary index for the current bucket.
  
  @param array   $columns            the JSON fields to index.
  @param string  $name               the name of the index.
  @param string  $whereClause        the WHERE clause of the index.
  @param boolean $ignoreIfExist      if a secondary index already exists with that name, an exception will be
  thrown unless this is set to true.
  @param boolean $defer              true to defer building of the index until buildN1qlDeferredIndexes() is
  called (or a direct call to the corresponding query service API).
  
  @return mixed
docstring_tokens: Specify a secondary index for the current bucket .