Struct mongodb::options::CreateCollectionOptions[][src]

#[non_exhaustive]
pub struct CreateCollectionOptions { pub capped: Option<bool>, pub size: Option<u64>, pub max: Option<u64>, pub storage_engine: Option<Document>, pub validator: Option<Document>, pub validation_level: Option<ValidationLevel>, pub validation_action: Option<ValidationAction>, pub view_on: Option<String>, pub pipeline: Option<Vec<Document>>, pub collation: Option<Collation>, pub write_concern: Option<WriteConcern>, pub index_option_defaults: Option<IndexOptionDefaults>, }
Expand description

These are the valid options for creating a collection with Database::create_collection.

Fields (Non-exhaustive)

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
capped: Option<bool>

Whether the collection should be capped. If true, size must also be set.

size: Option<u64>

The maximum size (in bytes) for a capped collection. This option is ignored if capped is not set to true.

max: Option<u64>

The maximum number of documents in a capped collection. The size limit takes precedence over this option. If a capped collection reaches the size limit before it reaches the maximum number of documents, MongoDB removes old documents.

storage_engine: Option<Document>

The storage engine that the collection should use. The value should take the following form:

{ <storage-engine-name>: <options> }

validator: Option<Document>

Specifies a validator to restrict the schema of documents which can exist in the collection. Expressions can be specified using any query operators except $near, $nearSphere, $text, and $where.

validation_level: Option<ValidationLevel>

Specifies how strictly the database should apply the validation rules to existing documents during an update.

validation_action: Option<ValidationAction>

Specifies whether the database should return an error or simply raise a warning if inserted documents do not pass the validation.

view_on: Option<String>

The name of the source collection or view to base this view on. If specified, this will cause a view to be created rather than a collection.

pipeline: Option<Vec<Document>>

An array that consists of the aggregation pipeline stages to run against view_on to determine the contents of the view.

collation: Option<Collation>

The default collation for the collection or view.

write_concern: Option<WriteConcern>

The write concern for the operation.

index_option_defaults: Option<IndexOptionDefaults>

The default configuration for indexes created on this collection, including the _id index.

Implementations

Create a builder for building CreateCollectionOptions. On the builder, call .capped(...)(optional), .size(...)(optional), .max(...)(optional), .storage_engine(...)(optional), .validator(...)(optional), .validation_level(...)(optional), .validation_action(...)(optional), .view_on(...)(optional), .pipeline(...)(optional), .collation(...)(optional), .write_concern(...)(optional), .index_option_defaults(...)(optional) to set the values of the fields. Finally, call .build() to create the instance of CreateCollectionOptions.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Deserialize this value from the given Serde deserializer. Read more

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Performs the conversion.

Should always be Self

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.