Loading...
Searching...
No Matches
mongocxx::options::index Class Reference

`#include <mongocxx/v_noabi/mongocxx/options/index.hpp>`

## Description

Used by MongoDB index creation operations.

See also
  - https://www.mongodb.com/docs/manual/reference/command/createIndexes

## Classes

class | base_storage_options
| Base class representing the optional storage engine options for indexes. More...
class | wiredtiger_storage_options
| The optional WiredTiger storage engine options for indexes. More...

## Public Member Functions

| index ()=default
| Default initialization.
| index (v1::indexes::options const &opts)
| Construct with the mongocxx::v1 equivalent.
bsoncxx::v_noabi::stdx::optional< bool > const & | background () const
| The current background setting.
index & | background (bool background)
| Whether or not to build the index in the background so that building the index does not block other database activities. The default is to build indexes in the foreground.
bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::document::view > const & | collation () const
| Retrieves the current collation for this index.
index & | collation (bsoncxx::v_noabi::document::view collation)
| Sets the collation for this index.
bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::string::view_or_value > const & | default_language () const
| The current default_language setting.
index & | default_language (bsoncxx::v_noabi::string::view_or_value default_language)
| For text indexes, the language that determines the list of stop words and the rules for the stemmer and tokenizer.
bsoncxx::v_noabi::stdx::optional< std::chrono::seconds > const & | expire_after () const
| The current expire_after setting.
index & | expire_after (std::chrono::seconds seconds)
| Set a value, in seconds, as a TTL to control how long MongoDB retains documents in this collection.
bsoncxx::v_noabi::stdx::optional< double > const & | haystack_bucket_size () const
| The current haystack_bucket_size setting.
index & | haystack_bucket_size (double haystack_bucket_size)
| For geoHaystack indexes, specify the number of units within which to group the location values; i.e. group in the same bucket those location values that are within the specified number of units to each other.
bsoncxx::v_noabi::stdx::optional< bool > const & | hidden () const
| The current hidden setting.
index & | hidden (bool hidden)
| Whether or not the index is hidden from the query planner. A hidden index is not evaluated as part of query plan selection.
bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::string::view_or_value > const & | language_override () const
| The current name of the field that contains the override language for text indexes.
index & | language_override (bsoncxx::v_noabi::string::view_or_value language_override)
| For text indexes, the name of the field, in the collection’s documents, that contains the override language for the document.
bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::string::view_or_value > const & | name () const
| The current name setting.
index & | name (bsoncxx::v_noabi::string::view_or_value name)
| The name of the index.
| operator bsoncxx::v_noabi::document::view_or_value ()
| Conversion operator that provides a view of the options in document form.
| operator v1::indexes::options () const
| Convert to the mongocxx::v1 equivalent.
bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::document::view > const & | partial_filter_expression () const
| The current partial_filter_expression setting.
index & | partial_filter_expression (bsoncxx::v_noabi::document::view partial_filter_expression)
| Sets the document for the partial filter expression for partial indexes.
bsoncxx::v_noabi::stdx::optional< bool > const & | sparse () const
| The current sparse setting.
index & | sparse (bool sparse)
| Whether or not to create a sparse index. Sparse indexes only reference documents with the indexed fields.
bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::document::view > const & | storage_engine () const
| The current storage engine options.
index & | storage_engine (bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::document::view > storage_engine)
| Specifies the storage engine options for the index.
index & | storage_options (std::unique_ptr< base_storage_options > storage_options)
| Specifies the storage engine options for the index.
index & | storage_options (std::unique_ptr< wiredtiger_storage_options > storage_options)
| Specifies the WiredTiger-specific storage engine options for the index.
bsoncxx::v_noabi::stdx::optional< std::uint8_t > const & | twod_bits_precision () const
| The current precision of the stored geohash value of the location data.
index & | twod_bits_precision (std::uint8_t twod_bits_precision)
| For 2d indexes, the precision of the stored geohash value of the location data.
bsoncxx::v_noabi::stdx::optional< double > const & | twod_location_max () const
| The current upper inclusive boundary for the longitude and latitude values.
index & | twod_location_max (double twod_location_max)
| For 2d indexes, the upper inclusive boundary for the longitude and latitude values.
bsoncxx::v_noabi::stdx::optional< double > const & | twod_location_min () const
| The current lower inclusive boundary for the longitude and latitude values.
index & | twod_location_min (double twod_location_min)
| For 2d indexes, the lower inclusive boundary for the longitude and latitude values.
bsoncxx::v_noabi::stdx::optional< std::uint8_t > const & | twod_sphere_version () const
| The current twod_sphere_version setting.
index & | twod_sphere_version (std::uint8_t twod_sphere_version)
| For 2dsphere indexes, the 2dsphere index version number. Version can be either 1 or 2.
bsoncxx::v_noabi::stdx::optional< bool > const & | unique () const
| The current unique setting.
index & | unique (bool unique)
| Whether or not to create a unique index so that the collection will not accept insertion of documents where the index key or keys match an existing value in the index.
bsoncxx::v_noabi::stdx::optional< std::int32_t > const & | version () const
| The current index version.
index & | version (std::int32_t v)
| Sets the index version.
bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::document::view > const & | weights () const
| The current weights setting.
index & | weights (bsoncxx::v_noabi::document::view weights)
| For text indexes, sets the weight document. The weight document contains field and weight pairs.

## Constructor & Destructor Documentation

## index() [1/2]

mongocxx::v_noabi::options::index::index | ( |  | ) |

default

Default initialization.

## index() [2/2]

mongocxx::v_noabi::options::index::index | ( | v1::indexes::options const & | opts | ) |

Construct with the mongocxx::v1 equivalent.

Warning
  The fields owned by opts MUST outlive the views in this object.

## Member Function Documentation

## background() [1/2]

bsoncxx::v_noabi::stdx::optional< bool > const & mongocxx::v_noabi::options::index::background | ( |  | ) | const

inline

The current background setting.

Returns
  The current background.

## background() [2/2]

index & mongocxx::v_noabi::options::index::background | ( | bool | background | ) |

inline

Whether or not to build the index in the background so that building the index does not block other database activities. The default is to build indexes in the foreground.

Parameters

  background | Whether or not to build the index in the background.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

See also
  - https://www.mongodb.com/docs/manual/tutorial/build-indexes-in-the-background/

## collation() [1/2]

bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::document::view > const & mongocxx::v_noabi::options::index::collation | ( |  | ) | const

inline

Retrieves the current collation for this index.

Returns
  The current collation.

See also
  - https://www.mongodb.com/docs/manual/reference/collation/

## collation() [2/2]

index & mongocxx::v_noabi::options::index::collation | ( | bsoncxx::v_noabi::document::view | collation | ) |

inline

Sets the collation for this index.

Parameters

  collation | The new collation.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

See also
  - https://www.mongodb.com/docs/manual/reference/collation/

## default_language() [1/2]

bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::string::view_or_value > const & mongocxx::v_noabi::options::index::default_language | ( |  | ) | const

inline

The current default_language setting.

Returns
  The current default_language.

## default_language() [2/2]

index & mongocxx::v_noabi::options::index::default_language | ( | bsoncxx::v_noabi::string::view_or_value | default_language | ) |

inline

For text indexes, the language that determines the list of stop words and the rules for the stemmer and tokenizer.

Parameters

  default_language | The default language used when creating text indexes.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

## expire_after() [1/2]

bsoncxx::v_noabi::stdx::optional< std::chrono::seconds > const & mongocxx::v_noabi::options::index::expire_after | ( |  | ) | const

inline

The current expire_after setting.

Returns
  The current expire_after value.

## expire_after() [2/2]

index & mongocxx::v_noabi::options::index::expire_after | ( | std::chrono::seconds | seconds | ) |

inline

Set a value, in seconds, as a TTL to control how long MongoDB retains documents in this collection.

Parameters

  seconds | The amount of time, in seconds, to retain documents.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

See also
  - https://www.mongodb.com/docs/manual/core/index-ttl/

## haystack_bucket_size() [1/2]

bsoncxx::v_noabi::stdx::optional< double > const & mongocxx::v_noabi::options::index::haystack_bucket_size | ( |  | ) | const

inline

The current haystack_bucket_size setting.

Returns
  The current haystack_bucket_size.

Deprecated
  This method is deprecated.

## haystack_bucket_size() [2/2]

index & mongocxx::v_noabi::options::index::haystack_bucket_size | ( | double | haystack_bucket_size | ) |

inline

For geoHaystack indexes, specify the number of units within which to group the location values; i.e. group in the same bucket those location values that are within the specified number of units to each other.

See also
  - https://www.mongodb.com/docs/manual/core/geohaystack/

Parameters

  haystack_bucket_size | The geoHaystack bucket size.

Deprecated
  This option is deprecated.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

## hidden() [1/2]

bsoncxx::v_noabi::stdx::optional< bool > const & mongocxx::v_noabi::options::index::hidden | ( |  | ) | const

inline

The current hidden setting.

Returns
  The current hidden.

## hidden() [2/2]

index & mongocxx::v_noabi::options::index::hidden | ( | bool | hidden | ) |

inline

Whether or not the index is hidden from the query planner. A hidden index is not evaluated as part of query plan selection.

Parameters

  hidden | Whether or not to create a hidden index.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

See also
  - https://www.mongodb.com/docs/manual/core/index-hidden/

## language_override() [1/2]

bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::string::view_or_value > const & mongocxx::v_noabi::options::index::language_override | ( |  | ) | const

inline

The current name of the field that contains the override language for text indexes.

Returns
  The name of the field that contains the override language for text indexes.

## language_override() [2/2]

index & mongocxx::v_noabi::options::index::language_override | ( | bsoncxx::v_noabi::string::view_or_value | language_override | ) |

inline

For text indexes, the name of the field, in the collection’s documents, that contains the override language for the document.

Parameters

  language_override | The name of the field that contains the override language for text indexes.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

## name() [1/2]

bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::string::view_or_value > const & mongocxx::v_noabi::options::index::name | ( |  | ) | const

inline

The current name setting.

Returns
  The current name.

## name() [2/2]

index & mongocxx::v_noabi::options::index::name | ( | bsoncxx::v_noabi::string::view_or_value | name | ) |

inline

The name of the index.

Parameters

  name | The name of the index.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

## operator bsoncxx::v_noabi::document::view_or_value()

mongocxx::v_noabi::options::index::operator bsoncxx::v_noabi::document::view_or_value | ( |  | ) |

Conversion operator that provides a view of the options in document form.

Exceptions

  mongocxx::v_noabi::logic_error | if an invalid expireAfterSeconds field is provided.

Returns
  A view of the current builder contents.

## operator v1::indexes::options()

mongocxx::v_noabi::options::index::operator v1::indexes::options | ( |  | ) | const

inline explicit

Convert to the mongocxx::v1 equivalent.

Note
  The storage_options and haystack_bucket_size fields are ignored.

## partial_filter_expression() [1/2]

bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::document::view > const & mongocxx::v_noabi::options::index::partial_filter_expression | ( |  | ) | const

inline

The current partial_filter_expression setting.

Returns
  The current partial_filter_expression.

## partial_filter_expression() [2/2]

index & mongocxx::v_noabi::options::index::partial_filter_expression | ( | bsoncxx::v_noabi::document::view | partial_filter_expression | ) |

inline

Sets the document for the partial filter expression for partial indexes.

Parameters

  partial_filter_expression | The partial filter expression document.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

## sparse() [1/2]

bsoncxx::v_noabi::stdx::optional< bool > const & mongocxx::v_noabi::options::index::sparse | ( |  | ) | const

inline

The current sparse setting.

Returns
  The current sparse setting.

## sparse() [2/2]

index & mongocxx::v_noabi::options::index::sparse | ( | bool | sparse | ) |

inline

Whether or not to create a sparse index. Sparse indexes only reference documents with the indexed fields.

Parameters

  sparse | Whether or not to create a sparse index.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

See also
  - https://www.mongodb.com/docs/manual/core/index-sparse/

## storage_engine() [1/2]

bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::document::view > const & mongocxx::v_noabi::options::index::storage_engine | ( |  | ) | const

inline

The current storage engine options.

## storage_engine() [2/2]

index & mongocxx::v_noabi::options::index::storage_engine | ( | bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::document::view > | storage_engine | ) |

inline

Specifies the storage engine options for the index.

Important
  This option overrides storage_options when set.

The document must have the form { <storage-engine-name>: <options> }, e.g.:

{ "wiredTiger": {"configString": "block_compressor=zlib"} }

Parameters

  storage_engine | The storage engine options for the index.

See also
  - Specifying Storage Engine Options (MongoDB Manual)
  - Storage Engines for Self-Managed Deployments (MongoDB Manual)

## storage_options() [1/2]

index & mongocxx::v_noabi::options::index::storage_options | ( | std::unique_ptr< base_storage_options > | storage_options | ) |

inline

Specifies the storage engine options for the index.

Important
  This option is overridden by storage_engine when set.

Parameters

  storage_options | The storage engine options for the index.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

Deprecated
  Use mongocxx::v_noabi::options::index::storage_engine instead.

## storage_options() [2/2]

index & mongocxx::v_noabi::options::index::storage_options | ( | std::unique_ptr< wiredtiger_storage_options > | storage_options | ) |

inline

Specifies the WiredTiger-specific storage engine options for the index.

Important
  This option is overridden by storage_engine when set.

Parameters

  storage_options | The storage engine options for the index.

Deprecated
  Use mongocxx::v_noabi::options::index::storage_engine instead.

## twod_bits_precision() [1/2]

bsoncxx::v_noabi::stdx::optional< std::uint8_t > const & mongocxx::v_noabi::options::index::twod_bits_precision | ( |  | ) | const

inline

The current precision of the stored geohash value of the location data.

Returns
  The precision of the stored geohash value of the location data.

## twod_bits_precision() [2/2]

index & mongocxx::v_noabi::options::index::twod_bits_precision | ( | std::uint8_t | twod_bits_precision | ) |

inline

For 2d indexes, the precision of the stored geohash value of the location data.

Parameters

  twod_bits_precision | The precision of the stored geohash value.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

## twod_location_max() [1/2]

bsoncxx::v_noabi::stdx::optional< double > const & mongocxx::v_noabi::options::index::twod_location_max | ( |  | ) | const

inline

The current upper inclusive boundary for the longitude and latitude values.

Returns
  The upper inclusive boundary for the longitude and latitude values.

## twod_location_max() [2/2]

index & mongocxx::v_noabi::options::index::twod_location_max | ( | double | twod_location_max | ) |

inline

For 2d indexes, the upper inclusive boundary for the longitude and latitude values.

Parameters

  twod_location_max | The upper inclusive boundary.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

## twod_location_min() [1/2]

bsoncxx::v_noabi::stdx::optional< double > const & mongocxx::v_noabi::options::index::twod_location_min | ( |  | ) | const

inline

The current lower inclusive boundary for the longitude and latitude values.

Returns
  The lower inclusive boundary for the longitude and latitude values.

## twod_location_min() [2/2]

index & mongocxx::v_noabi::options::index::twod_location_min | ( | double | twod_location_min | ) |

inline

For 2d indexes, the lower inclusive boundary for the longitude and latitude values.

Parameters

  twod_location_min | The lower inclusive boundary.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

## twod_sphere_version() [1/2]

bsoncxx::v_noabi::stdx::optional< std::uint8_t > const & mongocxx::v_noabi::options::index::twod_sphere_version | ( |  | ) | const

inline

The current twod_sphere_version setting.

Returns
  The current twod_sphere_version.

## twod_sphere_version() [2/2]

index & mongocxx::v_noabi::options::index::twod_sphere_version | ( | std::uint8_t | twod_sphere_version | ) |

inline

For 2dsphere indexes, the 2dsphere index version number. Version can be either 1 or 2.

Parameters

  twod_sphere_version | The 2dsphere index version number.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

## unique() [1/2]

bsoncxx::v_noabi::stdx::optional< bool > const & mongocxx::v_noabi::options::index::unique | ( |  | ) | const

inline

The current unique setting.

Returns
  The current unique.

## unique() [2/2]

index & mongocxx::v_noabi::options::index::unique | ( | bool | unique | ) |

inline

Whether or not to create a unique index so that the collection will not accept insertion of documents where the index key or keys match an existing value in the index.

Parameters

  unique | Whether or not to create a unique index.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

See also
  - https://www.mongodb.com/docs/manual/core/index-unique/

## version() [1/2]

bsoncxx::v_noabi::stdx::optional< std::int32_t > const & mongocxx::v_noabi::options::index::version | ( |  | ) | const

inline

The current index version.

Returns
  The current index version.

## version() [2/2]

index & mongocxx::v_noabi::options::index::version | ( | std::int32_t | v | ) |

inline

Sets the index version.

Parameters

  v | The index version.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

## weights() [1/2]

bsoncxx::v_noabi::stdx::optional< bsoncxx::v_noabi::document::view > const & mongocxx::v_noabi::options::index::weights | ( |  | ) | const

inline

The current weights setting.

Returns
  The current weights.

## weights() [2/2]

index & mongocxx::v_noabi::options::index::weights | ( | bsoncxx::v_noabi::document::view | weights | ) |

inline

For text indexes, sets the weight document. The weight document contains field and weight pairs.

Parameters

  weights | The weight document for text indexes.

Returns
  A reference to the object on which this member function is being called. This facilitates method chaining.

The documentation for this class was generated from the following file:

- mongocxx/v_noabi/mongocxx/options/index.hpp