#[repr(u32)]pub enum GcProtection {
OpenPackageTracking = 1,
Retained = 2,
}
Expand description
How the package served by [PackageCache.Get
] should be protected from GC.
Variants§
OpenPackageTracking = 1
Package will be protected from GC as long as there is an open connection to the directory.
Retained = 2
Package will be protected from GC as long as it is in the Retained index, which is
controlled by the [RetainedPackages
] protocol. Client is responsible for ensuring
the package is in the Retained index.
Implementations§
Source§impl GcProtection
impl GcProtection
pub fn from_primitive(prim: u32) -> Option<Self>
pub const fn into_primitive(self) -> u32
pub fn is_unknown(&self) -> bool
👎Deprecated: Strict enums should not use
is_unknown
Trait Implementations§
Source§impl Clone for GcProtection
impl Clone for GcProtection
Source§fn clone(&self) -> GcProtection
fn clone(&self) -> GcProtection
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for GcProtection
impl Debug for GcProtection
Source§impl<D: ResourceDialect> Decode<GcProtection, D> for GcProtection
impl<D: ResourceDialect> Decode<GcProtection, D> for GcProtection
Source§impl<D: ResourceDialect> Encode<GcProtection, D> for GcProtection
impl<D: ResourceDialect> Encode<GcProtection, D> for GcProtection
Source§impl Hash for GcProtection
impl Hash for GcProtection
Source§impl Ord for GcProtection
impl Ord for GcProtection
Source§fn cmp(&self, other: &GcProtection) -> Ordering
fn cmp(&self, other: &GcProtection) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for GcProtection
impl PartialEq for GcProtection
Source§impl PartialOrd for GcProtection
impl PartialOrd for GcProtection
Source§impl TypeMarker for GcProtection
impl TypeMarker for GcProtection
Source§type Owned = GcProtection
type Owned = GcProtection
The owned Rust type which this FIDL type decodes into.
Source§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Returns the minimum required alignment of the inline portion of the
encoded object. It must be a (nonzero) power of two.
Source§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
Returns the size of the inline portion of the encoded object, including
padding for alignment. Must be a multiple of
inline_align
.Source§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned
matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned
to a single memcpy. Read moreSource§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned
matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned
to a single memcpy.Source§impl ValueTypeMarker for GcProtection
impl ValueTypeMarker for GcProtection
Source§type Borrowed<'a> = GcProtection
type Borrowed<'a> = GcProtection
The Rust type to use for encoding. This is a particular
Encode<Self>
type cheaply obtainable from &Self::Owned
. There are three cases: Read moreimpl Copy for GcProtection
impl Eq for GcProtection
impl StructuralPartialEq for GcProtection
Auto Trait Implementations§
impl Freeze for GcProtection
impl RefUnwindSafe for GcProtection
impl Send for GcProtection
impl Sync for GcProtection
impl Unpin for GcProtection
impl UnwindSafe for GcProtection
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)