pub struct User {
pub username: String,
pub groups: Vec<u64, Global>,
pub roles: Vec<u64, Global>,
pub argon_hash: Option<SensitiveString>,
}
Expand description
A user that can authenticate with BonsaiDb.
Fields§
§username: String
The name of the role. Must be unique.
groups: Vec<u64, Global>
The IDs of the user groups this user belongs to.
roles: Vec<u64, Global>
The IDs of the roles this user has been assigned.
argon_hash: Option<SensitiveString>
The user’s stored password hash.
This field is not feature gated to prevent losing stored passwords if
the password-hashing
feature is disabled and then re-enabled and user
records are updated in the meantime.
Implementations§
§impl User
impl User
pub fn assume_identity<'name, Storage>(
name_or_id: impl Nameable<'name, u64>,
storage: &Storage
) -> Result<<Storage as StorageConnection>::Authenticated, Error>where
Storage: StorageConnection,
pub async fn assume_identity_async<'name, Storage>(
name_or_id: impl Nameable<'name, u64> + Send,
storage: &Storage
) -> impl Future<Output = Result<<Storage as AsyncStorageConnection>::Authenticated, Error>>where
Storage: AsyncStorageConnection,
pub fn default_with_username(username: impl Into<String>) -> User
pub fn default_with_username(username: impl Into<String>) -> User
Returns a default user with the given username.
pub fn effective_permissions<C>(
&self,
admin: &C,
inherit_permissions: &Permissions
) -> Result<Permissions, Error>where
C: Connection,
pub fn effective_permissions<C>(
&self,
admin: &C,
inherit_permissions: &Permissions
) -> Result<Permissions, Error>where
C: Connection,
Calculates the effective permissions based on the groups and roles this user is assigned.
Trait Implementations§
§impl Collection for User
impl Collection for User
§type PrimaryKey = u64
type PrimaryKey = u64
The unique id type. Each document stored in a collection will be
uniquely identified by this type. Read more
§fn collection_name() -> CollectionName
fn collection_name() -> CollectionName
§impl DefaultSerialization for User
impl DefaultSerialization for User
§fn natural_id(&self) -> Option<Self::PrimaryKey>
fn natural_id(&self) -> Option<Self::PrimaryKey>
Returns the natural identifier of
contents
. This is called when
pushing values into a collection, before attempting to automatically
assign a unique id. Read more§impl<'de> Deserialize<'de> for User
impl<'de> Deserialize<'de> for User
§fn deserialize<__D>(
__deserializer: __D
) -> Result<User, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<User, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl NamedCollection for User
impl NamedCollection for User
§type ByNameView = ByName
type ByNameView = ByName
The name view defined for the collection.
§fn load<'name, N, C>(
id: N,
connection: &C
) -> Result<Option<CollectionDocument<Self>>, Error>where
N: Nameable<'name, Self::PrimaryKey> + Send + Sync,
C: Connection,
Self: 'static + SerializedCollection + Sized,
fn load<'name, N, C>(
id: N,
connection: &C
) -> Result<Option<CollectionDocument<Self>>, Error>where
N: Nameable<'name, Self::PrimaryKey> + Send + Sync,
C: Connection,
Self: 'static + SerializedCollection + Sized,
§fn load_async<'name, 'life0, 'async_trait, N, C>(
id: N,
connection: &'life0 C
) -> Pin<Box<dyn Future<Output = Result<Option<CollectionDocument<Self>>, Error>> + Send + 'async_trait, Global>>where
'name: 'async_trait,
'life0: 'async_trait,
Self: 'static + SerializedCollection + Sized + 'async_trait + Send,
N: 'async_trait + Nameable<'name, Self::PrimaryKey> + Send + Sync,
C: 'async_trait + AsyncConnection,
fn load_async<'name, 'life0, 'async_trait, N, C>(
id: N,
connection: &'life0 C
) -> Pin<Box<dyn Future<Output = Result<Option<CollectionDocument<Self>>, Error>> + Send + 'async_trait, Global>>where
'name: 'async_trait,
'life0: 'async_trait,
Self: 'static + SerializedCollection + Sized + 'async_trait + Send,
N: 'async_trait + Nameable<'name, Self::PrimaryKey> + Send + Sync,
C: 'async_trait + AsyncConnection,
§fn entry<'name, N, C, 'connection>(
id: N,
connection: &'connection C
) -> Entry<'connection, 'name, C, Self, (), ()>where
N: Into<NamedReference<'name, Self::PrimaryKey>> + Send + Sync,
C: Connection,
Self: SerializedCollection + Sized,
fn entry<'name, N, C, 'connection>(
id: N,
connection: &'connection C
) -> Entry<'connection, 'name, C, Self, (), ()>where
N: Into<NamedReference<'name, Self::PrimaryKey>> + Send + Sync,
C: Connection,
Self: SerializedCollection + Sized,
§fn entry_async<'name, N, C, 'connection>(
id: N,
connection: &'connection C
) -> AsyncEntry<'connection, 'name, C, Self, (), ()> ⓘwhere
N: Into<NamedReference<'name, Self::PrimaryKey>> + Send + Sync,
C: AsyncConnection,
Self: SerializedCollection + Sized,
fn entry_async<'name, N, C, 'connection>(
id: N,
connection: &'connection C
) -> AsyncEntry<'connection, 'name, C, Self, (), ()> ⓘwhere
N: Into<NamedReference<'name, Self::PrimaryKey>> + Send + Sync,
C: AsyncConnection,
Self: SerializedCollection + Sized,
§fn load_document<'name, N, C>(
name: N,
connection: &C
) -> Result<Option<OwnedDocument>, Error>where
N: Nameable<'name, Self::PrimaryKey> + Send + Sync,
C: Connection,
Self: SerializedCollection + Sized,
fn load_document<'name, N, C>(
name: N,
connection: &C
) -> Result<Option<OwnedDocument>, Error>where
N: Nameable<'name, Self::PrimaryKey> + Send + Sync,
C: Connection,
Self: SerializedCollection + Sized,
Loads a document from this collection by name, if applicable. Return
Ok(None)
if unsupported. Read more§fn load_document_async<'name, 'life0, 'async_trait, N, C>(
name: N,
connection: &'life0 C
) -> Pin<Box<dyn Future<Output = Result<Option<OwnedDocument>, Error>> + Send + 'async_trait, Global>>where
'name: 'async_trait,
'life0: 'async_trait,
Self: SerializedCollection + Sized + 'async_trait + Send,
N: 'async_trait + Nameable<'name, Self::PrimaryKey> + Send + Sync,
C: 'async_trait + AsyncConnection,
fn load_document_async<'name, 'life0, 'async_trait, N, C>(
name: N,
connection: &'life0 C
) -> Pin<Box<dyn Future<Output = Result<Option<OwnedDocument>, Error>> + Send + 'async_trait, Global>>where
'name: 'async_trait,
'life0: 'async_trait,
Self: SerializedCollection + Sized + 'async_trait + Send,
N: 'async_trait + Nameable<'name, Self::PrimaryKey> + Send + Sync,
C: 'async_trait + AsyncConnection,
Loads a document from this collection by name, if applicable. Return
Ok(None)
if unsupported. Read more§impl Serialize for User
impl Serialize for User
§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl RefUnwindSafe for User
impl Send for User
impl Sync for User
impl Unpin for User
impl UnwindSafe for User
Blanket Implementations§
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>
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> Schema for Twhere
T: 'static + Collection,
impl<T> Schema for Twhere
T: 'static + Collection,
§fn schema_name() -> SchemaName
fn schema_name() -> SchemaName
Returns the unique
SchemaName
for this schema.§impl<T> SerializedCollection for Twhere
T: DefaultSerialization + Serialize + DeserializeOwned,
impl<T> SerializedCollection for Twhere
T: DefaultSerialization + Serialize + DeserializeOwned,
§fn format() -> <T as SerializedCollection>::Format
fn format() -> <T as SerializedCollection>::Format
Returns the configured instance of
Self::Format
.§fn natural_id(
contents: &<T as SerializedCollection>::Contents
) -> Option<<T as Collection>::PrimaryKey>
fn natural_id(
contents: &<T as SerializedCollection>::Contents
) -> Option<<T as Collection>::PrimaryKey>
Returns the natural identifier of
contents
. This is called when
pushing values into a collection, before attempting to automatically
assign a unique id. Read more§fn deserialize(data: &[u8]) -> Result<Self::Contents, Error>
fn deserialize(data: &[u8]) -> Result<Self::Contents, Error>
Deserialize
data
as Self::Contents
using this collection’s format.§fn document_contents<D>(doc: &D) -> Result<Self::Contents, Error>where
D: Document<Self>,
Self: Sized,
fn document_contents<D>(doc: &D) -> Result<Self::Contents, Error>where
D: Document<Self>,
Self: Sized,
Returns the deserialized contents of
doc
.§fn set_document_contents<D>(
doc: &mut D,
contents: Self::Contents
) -> Result<(), Error>where
D: Document<Self>,
Self: Sized,
fn set_document_contents<D>(
doc: &mut D,
contents: Self::Contents
) -> Result<(), Error>where
D: Document<Self>,
Self: Sized,
Sets the contents of
doc
to contents
.§fn serialize(item: &Self::Contents) -> Result<Vec<u8, Global>, Error>
fn serialize(item: &Self::Contents) -> Result<Vec<u8, Global>, Error>
Serialize
item
using this collection’s format.§fn get<C, PrimaryKey>(
id: PrimaryKey,
connection: &C
) -> Result<Option<CollectionDocument<Self>>, Error>where
C: Connection,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Self: Sized,
fn get<C, PrimaryKey>(
id: PrimaryKey,
connection: &C
) -> Result<Option<CollectionDocument<Self>>, Error>where
C: Connection,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Self: Sized,
§fn get_async<'life0, 'async_trait, C, PrimaryKey>(
id: PrimaryKey,
connection: &'life0 C
) -> Pin<Box<dyn Future<Output = Result<Option<CollectionDocument<Self>>, Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
C: AsyncConnection + 'async_trait,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey> + 'async_trait,
Self: Sized + 'async_trait + Send,
fn get_async<'life0, 'async_trait, C, PrimaryKey>(
id: PrimaryKey,
connection: &'life0 C
) -> Pin<Box<dyn Future<Output = Result<Option<CollectionDocument<Self>>, Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
C: AsyncConnection + 'async_trait,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey> + 'async_trait,
Self: Sized + 'async_trait + Send,
§fn get_multiple<C, DocumentIds, PrimaryKey, I>(
ids: DocumentIds,
connection: &C
) -> Result<Vec<CollectionDocument<Self>, Global>, Error>where
C: Connection,
DocumentIds: IntoIterator<Item = PrimaryKey, IntoIter = I> + Send + Sync,
I: Iterator<Item = PrimaryKey> + Send + Sync,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Self: Sized,
fn get_multiple<C, DocumentIds, PrimaryKey, I>(
ids: DocumentIds,
connection: &C
) -> Result<Vec<CollectionDocument<Self>, Global>, Error>where
C: Connection,
DocumentIds: IntoIterator<Item = PrimaryKey, IntoIter = I> + Send + Sync,
I: Iterator<Item = PrimaryKey> + Send + Sync,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Self: Sized,
Retrieves all documents matching
ids
. Documents that are not found
are not returned, but no error will be generated. Read more§fn get_multiple_async<'life0, 'async_trait, C, DocumentIds, PrimaryKey, I>(
ids: DocumentIds,
connection: &'life0 C
) -> Pin<Box<dyn Future<Output = Result<Vec<CollectionDocument<Self>, Global>, Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
C: AsyncConnection + 'async_trait,
DocumentIds: IntoIterator<Item = PrimaryKey, IntoIter = I> + Send + Sync + 'async_trait,
I: Iterator<Item = PrimaryKey> + Send + Sync + 'async_trait,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey> + 'async_trait,
Self: Sized + 'async_trait + Send,
fn get_multiple_async<'life0, 'async_trait, C, DocumentIds, PrimaryKey, I>(
ids: DocumentIds,
connection: &'life0 C
) -> Pin<Box<dyn Future<Output = Result<Vec<CollectionDocument<Self>, Global>, Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
C: AsyncConnection + 'async_trait,
DocumentIds: IntoIterator<Item = PrimaryKey, IntoIter = I> + Send + Sync + 'async_trait,
I: Iterator<Item = PrimaryKey> + Send + Sync + 'async_trait,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey> + 'async_trait,
Self: Sized + 'async_trait + Send,
Retrieves all documents matching
ids
. Documents that are not found
are not returned, but no error will be generated. Read more§fn list<R, PrimaryKey, C>(
ids: R,
connection: &C
) -> List<'_, C, Self, PrimaryKey>where
R: Into<Range<PrimaryKey>>,
C: Connection,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Self: Sized,
fn list<R, PrimaryKey, C>(
ids: R,
connection: &C
) -> List<'_, C, Self, PrimaryKey>where
R: Into<Range<PrimaryKey>>,
C: Connection,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Self: Sized,
Retrieves all documents matching the range of
ids
. Read more§fn list_async<R, PrimaryKey, C>(
ids: R,
connection: &C
) -> AsyncList<'_, C, Self, PrimaryKey> ⓘwhere
R: Into<Range<PrimaryKey>>,
C: AsyncConnection,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Self: Sized,
fn list_async<R, PrimaryKey, C>(
ids: R,
connection: &C
) -> AsyncList<'_, C, Self, PrimaryKey> ⓘwhere
R: Into<Range<PrimaryKey>>,
C: AsyncConnection,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Self: Sized,
Retrieves all documents matching the range of
ids
. Read more§fn list_with_prefix<C>(
prefix: Self::PrimaryKey,
connection: &C
) -> List<'_, C, Self, Self::PrimaryKey>where
C: Connection,
Self: Sized,
Self::PrimaryKey: IntoPrefixRange,
fn list_with_prefix<C>(
prefix: Self::PrimaryKey,
connection: &C
) -> List<'_, C, Self, Self::PrimaryKey>where
C: Connection,
Self: Sized,
Self::PrimaryKey: IntoPrefixRange,
Retrieves all documents with ids that start with
prefix
. Read more§fn list_with_prefix_async<C>(
prefix: Self::PrimaryKey,
connection: &C
) -> AsyncList<'_, C, Self, Self::PrimaryKey> ⓘwhere
C: AsyncConnection,
Self: Sized,
Self::PrimaryKey: IntoPrefixRange,
fn list_with_prefix_async<C>(
prefix: Self::PrimaryKey,
connection: &C
) -> AsyncList<'_, C, Self, Self::PrimaryKey> ⓘwhere
C: AsyncConnection,
Self: Sized,
Self::PrimaryKey: IntoPrefixRange,
Retrieves all documents with ids that start with
prefix
. Read more§fn all<C>(connection: &C) -> List<'_, C, Self, Self::PrimaryKey>where
C: Connection,
Self: Sized,
fn all<C>(connection: &C) -> List<'_, C, Self, Self::PrimaryKey>where
C: Connection,
Self: Sized,
Retrieves all documents. Read more
§fn all_async<C>(connection: &C) -> AsyncList<'_, C, Self, Self::PrimaryKey> ⓘwhere
C: AsyncConnection,
Self: Sized,
fn all_async<C>(connection: &C) -> AsyncList<'_, C, Self, Self::PrimaryKey> ⓘwhere
C: AsyncConnection,
Self: Sized,
Retrieves all documents. Read more
§fn push<Cn>(
contents: Self::Contents,
connection: &Cn
) -> Result<CollectionDocument<Self>, InsertError<Self::Contents>>where
Cn: Connection,
Self: 'static + Sized,
fn push<Cn>(
contents: Self::Contents,
connection: &Cn
) -> Result<CollectionDocument<Self>, InsertError<Self::Contents>>where
Cn: Connection,
Self: 'static + Sized,
Pushes this value into the collection, returning the created document.
This function is useful when
Self != Self::Contents
. Read more§fn push_async<'life0, 'async_trait, Cn>(
contents: Self::Contents,
connection: &'life0 Cn
) -> Pin<Box<dyn Future<Output = Result<CollectionDocument<Self>, InsertError<Self::Contents>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
Self: 'static + Sized + 'async_trait + Send,
Self::Contents: 'async_trait,
Cn: 'async_trait + AsyncConnection,
fn push_async<'life0, 'async_trait, Cn>(
contents: Self::Contents,
connection: &'life0 Cn
) -> Pin<Box<dyn Future<Output = Result<CollectionDocument<Self>, InsertError<Self::Contents>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
Self: 'static + Sized + 'async_trait + Send,
Self::Contents: 'async_trait,
Cn: 'async_trait + AsyncConnection,
Pushes this value into the collection, returning the created document.
This function is useful when
Self != Self::Contents
. Read more§fn push_into<Cn>(
self,
connection: &Cn
) -> Result<CollectionDocument<Self>, InsertError<Self>>where
Cn: Connection,
Self: 'static + SerializedCollection<Contents = Self> + Sized,
fn push_into<Cn>(
self,
connection: &Cn
) -> Result<CollectionDocument<Self>, InsertError<Self>>where
Cn: Connection,
Self: 'static + SerializedCollection<Contents = Self> + Sized,
Pushes this value into the collection, returning the created document. Read more
§fn push_into_async<'life0, 'async_trait, Cn>(
self,
connection: &'life0 Cn
) -> Pin<Box<dyn Future<Output = Result<CollectionDocument<Self>, InsertError<Self>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
Self: 'static + SerializedCollection<Contents = Self> + Sized + 'async_trait + Send,
Cn: 'async_trait + AsyncConnection,
fn push_into_async<'life0, 'async_trait, Cn>(
self,
connection: &'life0 Cn
) -> Pin<Box<dyn Future<Output = Result<CollectionDocument<Self>, InsertError<Self>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
Self: 'static + SerializedCollection<Contents = Self> + Sized + 'async_trait + Send,
Cn: 'async_trait + AsyncConnection,
Pushes this value into the collection, returning the created document. Read more
§fn insert<PrimaryKey, Cn>(
id: PrimaryKey,
contents: Self::Contents,
connection: &Cn
) -> Result<CollectionDocument<Self>, InsertError<Self::Contents>>where
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Cn: Connection,
Self: 'static + Sized,
fn insert<PrimaryKey, Cn>(
id: PrimaryKey,
contents: Self::Contents,
connection: &Cn
) -> Result<CollectionDocument<Self>, InsertError<Self::Contents>>where
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Cn: Connection,
Self: 'static + Sized,
Inserts this value into the collection with the specified id, returning
the created document. Read more
§fn insert_async<'life0, 'async_trait, PrimaryKey, Cn>(
id: PrimaryKey,
contents: Self::Contents,
connection: &'life0 Cn
) -> Pin<Box<dyn Future<Output = Result<CollectionDocument<Self>, InsertError<Self::Contents>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey> + 'async_trait,
Cn: AsyncConnection + 'async_trait,
Self: 'static + Sized + 'async_trait + Send,
Self::Contents: 'async_trait,
fn insert_async<'life0, 'async_trait, PrimaryKey, Cn>(
id: PrimaryKey,
contents: Self::Contents,
connection: &'life0 Cn
) -> Pin<Box<dyn Future<Output = Result<CollectionDocument<Self>, InsertError<Self::Contents>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey> + 'async_trait,
Cn: AsyncConnection + 'async_trait,
Self: 'static + Sized + 'async_trait + Send,
Self::Contents: 'async_trait,
Inserts this value into the collection with the specified id, returning
the created document. Read more
§fn insert_into<PrimaryKey, Cn>(
self,
id: PrimaryKey,
connection: &Cn
) -> Result<CollectionDocument<Self>, InsertError<Self>>where
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Cn: Connection,
Self: 'static + SerializedCollection<Contents = Self> + Sized,
fn insert_into<PrimaryKey, Cn>(
self,
id: PrimaryKey,
connection: &Cn
) -> Result<CollectionDocument<Self>, InsertError<Self>>where
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Cn: Connection,
Self: 'static + SerializedCollection<Contents = Self> + Sized,
Inserts this value into the collection with the given
id
, returning
the created document. Read more§fn insert_into_async<'life0, 'async_trait, PrimaryKey, Cn>(
self,
id: PrimaryKey,
connection: &'life0 Cn
) -> Pin<Box<dyn Future<Output = Result<CollectionDocument<Self>, InsertError<Self>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey> + 'async_trait,
Cn: AsyncConnection + 'async_trait,
Self: 'static + SerializedCollection<Contents = Self> + Sized + 'async_trait + Send,
fn insert_into_async<'life0, 'async_trait, PrimaryKey, Cn>(
self,
id: PrimaryKey,
connection: &'life0 Cn
) -> Pin<Box<dyn Future<Output = Result<CollectionDocument<Self>, InsertError<Self>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey> + 'async_trait,
Cn: AsyncConnection + 'async_trait,
Self: 'static + SerializedCollection<Contents = Self> + Sized + 'async_trait + Send,
Inserts this value into the collection with the given
id
, returning
the created document. Read more§fn overwrite<PrimaryKey, Cn>(
id: PrimaryKey,
contents: Self::Contents,
connection: &Cn
) -> Result<CollectionDocument<Self>, InsertError<Self::Contents>>where
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Cn: Connection,
Self: 'static + Sized,
fn overwrite<PrimaryKey, Cn>(
id: PrimaryKey,
contents: Self::Contents,
connection: &Cn
) -> Result<CollectionDocument<Self>, InsertError<Self::Contents>>where
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Cn: Connection,
Self: 'static + Sized,
Overwrites this value into the collection with the specified id, returning
the created or updated document. Read more
§fn overwrite_async<'life0, 'async_trait, PrimaryKey, Cn>(
id: PrimaryKey,
contents: Self::Contents,
connection: &'life0 Cn
) -> Pin<Box<dyn Future<Output = Result<CollectionDocument<Self>, InsertError<Self::Contents>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey> + 'async_trait,
Cn: AsyncConnection + 'async_trait,
Self: 'static + Sized + 'async_trait + Send,
Self::Contents: 'async_trait,
fn overwrite_async<'life0, 'async_trait, PrimaryKey, Cn>(
id: PrimaryKey,
contents: Self::Contents,
connection: &'life0 Cn
) -> Pin<Box<dyn Future<Output = Result<CollectionDocument<Self>, InsertError<Self::Contents>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey> + 'async_trait,
Cn: AsyncConnection + 'async_trait,
Self: 'static + Sized + 'async_trait + Send,
Self::Contents: 'async_trait,
Overwrites this value into the collection with the specified id, returning
the created or updated document. Read more
§fn overwrite_into<Cn, PrimaryKey>(
self,
id: PrimaryKey,
connection: &Cn
) -> Result<CollectionDocument<Self>, InsertError<Self>>where
Cn: Connection,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Self: 'static + SerializedCollection<Contents = Self> + Sized,
fn overwrite_into<Cn, PrimaryKey>(
self,
id: PrimaryKey,
connection: &Cn
) -> Result<CollectionDocument<Self>, InsertError<Self>>where
Cn: Connection,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey>,
Self: 'static + SerializedCollection<Contents = Self> + Sized,
Overwrites this value into the collection with the given
id
, returning
the created or updated document. Read more§fn overwrite_into_async<'life0, 'async_trait, Cn, PrimaryKey>(
self,
id: PrimaryKey,
connection: &'life0 Cn
) -> Pin<Box<dyn Future<Output = Result<CollectionDocument<Self>, InsertError<Self>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey> + 'async_trait,
Self: 'static + SerializedCollection<Contents = Self> + Sized + 'async_trait + Send,
Cn: 'async_trait + AsyncConnection,
fn overwrite_into_async<'life0, 'async_trait, Cn, PrimaryKey>(
self,
id: PrimaryKey,
connection: &'life0 Cn
) -> Pin<Box<dyn Future<Output = Result<CollectionDocument<Self>, InsertError<Self>>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
PrimaryKey: for<'k> KeyEncoding<'k, Self::PrimaryKey> + 'async_trait,
Self: 'static + SerializedCollection<Contents = Self> + Sized + 'async_trait + Send,
Cn: 'async_trait + AsyncConnection,
Overwrites this value into the collection with the given
id
, returning
the created or updated document. Read more