Enum memfile::Seal [−][src]
#[repr(u32)]
#[non_exhaustive]
pub enum Seal {
Seal,
Shrink,
Grow,
Write,
FutureWrite,
}
Expand description
A seal that prevents certain actions from being performed on a file.
Note that seals apply to a file, not a file descriptor. If two file descriptors refer to the same file, they share the same set of seals.
Seals can not be removed from a file once applied.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
Prevent adding more seals to the file.
Prevent the file from being shrunk with truncate
or similar.
Combine with Seal::Grow
to prevent the file from being resized in any way.
Prevent the file from being extended with truncate
, fallocate
or simillar.
Combine with Seal::Shrink
to prevent the file from being resized in any way.
Prevent write to the file.
This will block all writes to the file and prevents any shared, writable memory mappings from being created.
If a shared, writable memory mapping already exists, adding this seal will fail.
Similar to Seal::Write
, but allows existing shared, writable memory mappings to modify the file contents.
This can be used to share a read-only view of the file with other processes, while still being able to modify the contents through an existing mapping.
Trait Implementations
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Auto Trait Implementations
impl RefUnwindSafe for Seal
impl UnwindSafe for Seal
Blanket Implementations
Mutably borrows from an owned value. Read more