pub struct OwnedAcr { /* private fields */ }Expand description
Owned variant of Acr.
§Inner representation
By default, this type uses a Box<str> internally. The inner representation can be selected at
compile time by using one of the following supported values:
Arc– Use anArc<str>.ThinArc– Use atriomphe::ThinArc<(), u8>. Requires thetriomphecargo feature.SmallVec– Use asmallvec::SmallVec<[u8; 32]>. Requires thesmallveccargo feature.
The selected value can be set by using the ruma_identifiers_storage compile-time cfg setting.
This setting can be configured using the RUSTFLAGS environment variable at build time, like this:
RUSTFLAGS="--cfg ruma_identifiers_storage=\"{value}\""Or in .cargo/config.toml:
# General setting for all targets, overridden by per-target `rustflags` setting if set.
[build]
rustflags = ["--cfg", "ruma_identifiers_storage=\"{value}\""]
# Per-target setting.
[target.<triple/cfg>]
rustflags = ["--cfg", "ruma_identifiers_storage=\"{value}\""]This setting can also be configured using the RUMA_IDENTIFIERS_STORAGE environment variable at
compile time, which has the benefit of not requiring to re-compile the whole dependency chain
when the value is changed, like this:
RUMA_IDENTIFIERS_STORAGE="{value}"Implementations§
Source§impl OwnedAcr
impl OwnedAcr
Sourcepub fn zeroize(self)
Available on crate feature events only.
pub fn zeroize(self)
events only.Securely zero memory (aka zeroize) of OwnedAcr.
This method zeroizes this type by writing zeros in its
memory location before freeing it. It internally uses
the zeroize crate. Note that this type
doesn’t implement the zeroize::Zeroize trait because the
Zeroize::zeroize method takes a &mut self, which means
we could put this type into an inconsistent state if it is
used after calling that method. Instead, this method takes
ownership of the type, ensuring it’s impossible to misuse
it.
§Implementation details
If the ruma_identifiers_storage configuration is set to
Arc or ThinArc, this type will be zeroized if and only if
there is no other strong or weak reference to this same location.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for OwnedAcr
impl<'de> Deserialize<'de> for OwnedAcr
Source§fn deserialize<D>(
deserializer: D,
) -> Result<OwnedAcr, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<OwnedAcr, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
impl Eq for OwnedAcr
Source§impl Ord for OwnedAcr
impl Ord for OwnedAcr
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialOrd for OwnedAcr
impl PartialOrd for OwnedAcr
Source§impl Serialize for OwnedAcr
impl Serialize for OwnedAcr
Source§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,
Auto Trait Implementations§
impl Freeze for OwnedAcr
impl RefUnwindSafe for OwnedAcr
impl Send for OwnedAcr
impl Sync for OwnedAcr
impl Unpin for OwnedAcr
impl UnsafeUnpin for OwnedAcr
impl UnwindSafe for OwnedAcr
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> DropFlavorWrapper<T> for T
impl<T> DropFlavorWrapper<T> for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.