pub struct ErofsPager { /* private fields */ }Expand description
A wrapper around Zircon’s zx::Pager.
Implementations§
Source§impl ErofsPager
impl ErofsPager
Sourcepub fn create_vmo(
&self,
file: Weak<ErofsFile>,
initial_size: u64,
) -> Result<(Vmo, u64), Status>
pub fn create_vmo( &self, file: Weak<ErofsFile>, initial_size: u64, ) -> Result<(Vmo, u64), Status>
Creates a pager-backed VMO and registers its packet receiver, returning the VMO and its receiver registration key.
Sourcepub fn watch_for_zero_children(
&self,
key: u64,
vmo: &Vmo,
) -> Result<bool, Status>
pub fn watch_for_zero_children( &self, key: u64, vmo: &Vmo, ) -> Result<bool, Status>
Instructs the pager to watch for the VMO_ZERO_CHILDREN signal on vmo for key.
If the file is currently held weakly by the packet receiver, this method upgrades it to a
Strong reference to prevent the file from being deallocated while clients have active
mappings, and registers the signal wait on vmo. Returns Ok(true) if a transition to
Strong occurred.
Sourcepub fn unregister(&self, key: u64)
pub fn unregister(&self, key: u64)
Unregisters and drops the packet receiver registration for key.
Sourcepub fn unregister_all(&self)
pub fn unregister_all(&self)
Unregisters and discards all active packet receiver registrations.
Auto Trait Implementations§
impl !Freeze for ErofsPager
impl RefUnwindSafe for ErofsPager
impl Send for ErofsPager
impl Sync for ErofsPager
impl Unpin for ErofsPager
impl UnsafeUnpin for ErofsPager
impl UnwindSafe for ErofsPager
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, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
Source§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
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> ⓘ
Converts
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> ⓘ
Converts
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 more