pub struct DatabaseBuilder<E>where
    E: DatabaseKind,
{ /* private fields */ }
Expand description

Options for opening or creating an environment.

Implementations§

source§

impl<E> DatabaseBuilder<E>where
    E: DatabaseKind,

source

pub fn open(&self, path: &Path) -> Result<Database<E>>

Open an environment.

Database files will be opened with 644 permissions.

source

pub fn open_with_permissions(
    &self,
    path: &Path,
    mode: mdbx_mode_t
) -> Result<Database<E>>

Open an environment with the provided UNIX permissions.

The path may not contain the null character.

source

pub fn set_flags(&mut self, flags: DatabaseFlags) -> &mut Self

Sets the provided options in the environment.

source

pub fn set_max_readers(&mut self, max_readers: c_uint) -> &mut Self

Sets the maximum number of threads or reader slots for the environment.

This defines the number of slots in the lock table that is used to track readers in the the environment. The default is 126. Starting a read-only transaction normally ties a lock table slot to the Transaction object until it or the [Environment] object is destroyed.

source

pub fn set_max_tables(&mut self, v: usize) -> &mut Self

Sets the maximum number of named tables for the environment.

This function is only needed if multiple tables will be used in the environment. Simpler applications that use the environment as a single unnamed table can ignore this option.

Currently a moderate number of slots are cheap but a huge number gets expensive: 7-120 words per transaction, and every [Transaction::open_db()] does a linear search of the opened slots.

source

pub fn set_rp_augment_limit(&mut self, v: u64) -> &mut Self

source

pub fn set_loose_limit(&mut self, v: u64) -> &mut Self

source

pub fn set_dp_reserve_limit(&mut self, v: u64) -> &mut Self

source

pub fn set_txn_dp_limit(&mut self, v: u64) -> &mut Self

source

pub fn set_spill_max_denominator(&mut self, v: u8) -> &mut Self

source

pub fn set_spill_min_denominator(&mut self, v: u8) -> &mut Self

source

pub fn set_geometry<R: RangeBounds<usize>>(
    &mut self,
    geometry: Geometry<R>
) -> &mut Self

Set all size-related parameters of environment, including page size and the min/max size of the memory map.

Trait Implementations§

source§

impl<E> Clone for DatabaseBuilder<E>where
    E: DatabaseKind + Clone,

source§

fn clone(&self) -> DatabaseBuilder<E>

Returns a copy of the value. Read more
1.0.0 · source§

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

Performs copy-assignment from source. Read more
source§

impl<E> Debug for DatabaseBuilder<E>where
    E: DatabaseKind + Debug,

source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<E> RefUnwindSafe for DatabaseBuilder<E>where
    E: RefUnwindSafe,

§

impl<E> Send for DatabaseBuilder<E>where
    E: Send,

§

impl<E> Sync for DatabaseBuilder<E>where
    E: Sync,

§

impl<E> Unpin for DatabaseBuilder<E>where
    E: Unpin,

§

impl<E> UnwindSafe for DatabaseBuilder<E>where
    E: UnwindSafe,

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

const: unstable · source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

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

const: unstable · 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 Twhere
    T: Clone,

§

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 Twhere
    U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

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

§

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

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.