Struct TmpFSParams

Source
pub struct TmpFSParams {
    pub memory_limit: usize,
}
Expand description

TmpFS filesystem configuration parameters

Configuration structure for creating TmpFS (temporary filesystem) instances. TmpFS is a RAM-based filesystem that stores all data in memory, making it very fast but volatile (data is lost on reboot).

§Features

  • Memory Limiting: Configurable maximum memory usage to prevent OOM
  • Performance: All operations occur in RAM for maximum speed
  • Volatility: Data exists only while mounted and system is running

§Memory Management

The memory limit prevents runaway processes from consuming all available RAM through filesystem operations. A limit of 0 means unlimited memory usage.

Fields§

§memory_limit: usize

Maximum memory usage in bytes (0 = unlimited)

This limit applies to the total size of all files and directories stored in the TmpFS instance. When the limit is reached, write operations will fail with ENOSPC (No space left on device).

Implementations§

Source§

impl TmpFSParams

Source

pub fn with_memory_limit(memory_limit: usize) -> Self

Create TmpFS parameters with specified memory limit

§Arguments
  • memory_limit - Maximum memory usage in bytes (0 for unlimited)
§Returns

TmpFSParams instance with the specified memory limit

§Example
// Create TmpFS with 10MB limit
let params = TmpFSParams::with_memory_limit(10 * 1024 * 1024);

Trait Implementations§

Source§

impl Clone for TmpFSParams

Source§

fn clone(&self) -> TmpFSParams

Returns a copy of the value. Read more
1.0.0§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for TmpFSParams

Source§

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

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

impl Default for TmpFSParams

Source§

fn default() -> Self

Create TmpFS parameters with unlimited memory

The default configuration allows unlimited memory usage, which provides maximum flexibility but requires careful monitoring in production environments.

Source§

impl FileSystemParams for TmpFSParams

Source§

fn to_string_map(&self) -> BTreeMap<String, String>

Convert parameters to string map for backward compatibility Read more
Source§

fn from_string_map(map: &BTreeMap<String, String>) -> Result<Self, String>

Create parameters from string map for backward compatibility Read more
Source§

fn as_any(&self) -> &dyn Any

Enable dynamic downcasting for runtime type identification Read more
Source§

impl PartialEq for TmpFSParams

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for TmpFSParams

Auto Trait Implementations§

§

impl Freeze for TmpFSParams

§

impl RefUnwindSafe for TmpFSParams

§

impl Send for TmpFSParams

§

impl Sync for TmpFSParams

§

impl Unpin for TmpFSParams

§

impl UnwindSafe for TmpFSParams

Blanket Implementations§

§

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

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

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

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

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

§

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

Mutably borrows from an owned value. Read more
§

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

§

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
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

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

§

fn into(self) -> U

Calls U::from(self).

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

§

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

§

type Owned = T

The resulting type after obtaining ownership.
§

fn to_owned(&self) -> T

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

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

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

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

§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

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

§

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

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

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

Performs the conversion.