Skip to main content

RecordOptions

Struct RecordOptions 

Source
pub struct RecordOptions { /* private fields */ }
Expand description

How a record is written and read. The default is what publish_record and RecordSlot have always done.

Implementations§

Source§

impl RecordOptions

Source

pub const fn new() -> Self

Not durable, mode 0600, and a 64 KiB read limit.

Source

pub const fn durable(self, durable: bool) -> Self

Make the rename itself survive a crash, not only the contents.

On Unix the parent directory is synced after the rename. Windows has no directory sync, so the record is flushed again after the rename, through the publisher’s own handle. On a file system without POSIX renames the record is reopened by name for that, and the open waits out a concurrent replacement as RecordSlot::read does. An error from that step means the record is in place but may not survive a crash.

Source

pub const fn mode(self, mode: u32) -> Self

Permission bits of a published record, set before any contents are written. Choosing anything wider than 0600 is the caller’s decision.

Source

pub const fn read_limit(self, bytes: u64) -> Self

Largest record RecordSlot::read, RecordSlot::replace_if and RecordSlot::remove_if read, in bytes. A longer one is refused. repair and remove_if_matches keep their original comparison.

Trait Implementations§

Source§

impl Clone for RecordOptions

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for RecordOptions

Source§

impl Debug for RecordOptions

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for RecordOptions

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Eq for RecordOptions

Source§

impl PartialEq for RecordOptions

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for RecordOptions

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.