pub struct CreateCollection<'a> { /* private fields */ }
Expand description
Creates a new collection. Construct with Database::create_collection
.
Implementations§
Source§impl<'a> CreateCollection<'a>
impl<'a> CreateCollection<'a>
Sourcepub fn session(self, value: impl Into<&'a mut ClientSession>) -> Self
pub fn session(self, value: impl Into<&'a mut ClientSession>) -> Self
Use the provided session when running the operation.
Sourcepub fn with_options(
self,
value: impl Into<Option<CreateCollectionOptions>>,
) -> Self
pub fn with_options( self, value: impl Into<Option<CreateCollectionOptions>>, ) -> Self
Set all options. Note that this will replace all previous values set.
Sourcepub fn capped(self, value: bool) -> Self
pub fn capped(self, value: bool) -> Self
Whether the collection should be capped. If true, size
must also be set.
Sourcepub fn size(self, value: u64) -> Self
pub fn size(self, value: u64) -> Self
The maximum size (in bytes) for a capped collection. This option is ignored if capped
is
not set to true.
Sourcepub fn max(self, value: u64) -> Self
pub fn max(self, value: u64) -> Self
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.
Sourcepub fn storage_engine(self, value: Document) -> Self
pub fn storage_engine(self, value: Document) -> Self
The storage engine that the collection should use. The value should take the following form:
{ <storage-engine-name>: <options> }
Sourcepub fn validator(self, value: Document) -> Self
pub fn validator(self, value: Document) -> Self
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
.
Sourcepub fn validation_level(self, value: ValidationLevel) -> Self
pub fn validation_level(self, value: ValidationLevel) -> Self
Specifies how strictly the database should apply the validation rules to existing documents during an update.
Sourcepub fn validation_action(self, value: ValidationAction) -> Self
pub fn validation_action(self, value: ValidationAction) -> Self
Specifies whether the database should return an error or simply raise a warning if inserted documents do not pass the validation.
Sourcepub fn view_on(self, value: impl Into<String>) -> Self
pub fn view_on(self, value: impl Into<String>) -> Self
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.
Sourcepub fn pipeline(self, value: impl IntoIterator<Item = Document>) -> Self
pub fn pipeline(self, value: impl IntoIterator<Item = Document>) -> Self
An array that consists of the aggregation pipeline stages to run against view_on
to
determine the contents of the view.
Sourcepub fn collation(self, value: Collation) -> Self
pub fn collation(self, value: Collation) -> Self
The default collation for the collection or view.
Sourcepub fn write_concern(self, value: WriteConcern) -> Self
pub fn write_concern(self, value: WriteConcern) -> Self
The write concern for the operation.
Sourcepub fn index_option_defaults(self, value: IndexOptionDefaults) -> Self
pub fn index_option_defaults(self, value: IndexOptionDefaults) -> Self
The default configuration for indexes created on this collection, including the _id index.
Sourcepub fn timeseries(self, value: TimeseriesOptions) -> Self
pub fn timeseries(self, value: TimeseriesOptions) -> Self
An object containing options for creating time series collections. See the create
command documentation for
supported options, and the Time Series Collections documentation for more information.
This feature is only available on server versions 5.0 and above.
Sourcepub fn expire_after_seconds(self, value: Duration) -> Self
pub fn expire_after_seconds(self, value: Duration) -> Self
Used to automatically delete documents in time series collections. See the create
command documentation for more
information.
Sourcepub fn change_stream_pre_and_post_images(
self,
value: ChangeStreamPreAndPostImages,
) -> Self
pub fn change_stream_pre_and_post_images( self, value: ChangeStreamPreAndPostImages, ) -> Self
Options for supporting change stream pre- and post-images.
Sourcepub fn clustered_index(self, value: ClusteredIndex) -> Self
pub fn clustered_index(self, value: ClusteredIndex) -> Self
Options for clustered collections. This option is only available on server versions 5.3+.
Sourcepub fn comment(self, value: impl Into<Bson>) -> Self
pub fn comment(self, value: impl Into<Bson>) -> Self
Tags the query with an arbitrary Bson
value to help trace the operation through the
database profiler, currentOp and logs.
This option is only available on server versions 4.4+.
Sourcepub fn encrypted_fields(self, value: Document) -> Self
Available on crate feature in-use-encryption
only.
pub fn encrypted_fields(self, value: Document) -> Self
in-use-encryption
only.Map of encrypted fields for the created collection.
Trait Implementations§
Source§impl<'a> Action for CreateCollection<'a>
impl<'a> Action for CreateCollection<'a>
Source§impl<'a> IntoFuture for CreateCollection<'a>
impl<'a> IntoFuture for CreateCollection<'a>
Source§type IntoFuture = CreateCollectionFuture<'a>
type IntoFuture = CreateCollectionFuture<'a>
Source§fn into_future(self) -> Self::IntoFuture
fn into_future(self) -> Self::IntoFuture
Auto Trait Implementations§
impl<'a> Freeze for CreateCollection<'a>
impl<'a> !RefUnwindSafe for CreateCollection<'a>
impl<'a> Send for CreateCollection<'a>
impl<'a> Sync for CreateCollection<'a>
impl<'a> Unpin for CreateCollection<'a>
impl<'a> !UnwindSafe for CreateCollection<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self
to use its Display
implementation when
Debug
-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self
, then passes self.as_ref()
into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target
of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.