ArenaScope

Struct ArenaScope 

Source
pub struct ArenaScope<'a> { /* private fields */ }
Expand description

A scope for allocating within an arena.

All allocations made through this scope are freed when the scope ends.

Implementations§

Source§

impl<'a> ArenaScope<'a>

Source

pub fn alloc_str(&self, s: &str) -> &'a str

Allocate a string in the arena.

Source

pub fn alloc_slice<T: Copy>(&self, slice: &[T]) -> &'a [T]

Allocate a slice in the arena.

Source

pub fn alloc_slice_iter<T, I>(&self, iter: I) -> &'a [T]
where I: IntoIterator<Item = T>, I::IntoIter: ExactSizeIterator,

Allocate a slice from an iterator.

Source

pub fn alloc<T>(&self, value: T) -> &'a T

Allocate a single value in the arena.

Source

pub fn alloc_mut<T>(&self, value: T) -> &'a mut T

Allocate a mutable value in the arena.

Source

pub fn eq<V: Into<ScopedValue<'a>>>( &self, field: &str, value: V, ) -> ScopedFilter<'a>

Create an equality filter.

Source

pub fn ne<V: Into<ScopedValue<'a>>>( &self, field: &str, value: V, ) -> ScopedFilter<'a>

Create a not-equals filter.

Source

pub fn lt<V: Into<ScopedValue<'a>>>( &self, field: &str, value: V, ) -> ScopedFilter<'a>

Create a less-than filter.

Source

pub fn lte<V: Into<ScopedValue<'a>>>( &self, field: &str, value: V, ) -> ScopedFilter<'a>

Create a less-than-or-equal filter.

Source

pub fn gt<V: Into<ScopedValue<'a>>>( &self, field: &str, value: V, ) -> ScopedFilter<'a>

Create a greater-than filter.

Source

pub fn gte<V: Into<ScopedValue<'a>>>( &self, field: &str, value: V, ) -> ScopedFilter<'a>

Create a greater-than-or-equal filter.

Source

pub fn is_in( &self, field: &str, values: Vec<ScopedValue<'a>>, ) -> ScopedFilter<'a>

Create an IN filter.

Source

pub fn not_in( &self, field: &str, values: Vec<ScopedValue<'a>>, ) -> ScopedFilter<'a>

Create a NOT IN filter.

Source

pub fn contains<V: Into<ScopedValue<'a>>>( &self, field: &str, value: V, ) -> ScopedFilter<'a>

Create a CONTAINS filter.

Source

pub fn starts_with<V: Into<ScopedValue<'a>>>( &self, field: &str, value: V, ) -> ScopedFilter<'a>

Create a STARTS WITH filter.

Source

pub fn ends_with<V: Into<ScopedValue<'a>>>( &self, field: &str, value: V, ) -> ScopedFilter<'a>

Create an ENDS WITH filter.

Source

pub fn is_null(&self, field: &str) -> ScopedFilter<'a>

Create an IS NULL filter.

Source

pub fn is_not_null(&self, field: &str) -> ScopedFilter<'a>

Create an IS NOT NULL filter.

Source

pub fn and(&self, filters: Vec<ScopedFilter<'a>>) -> ScopedFilter<'a>

Combine filters with AND.

Source

pub fn or(&self, filters: Vec<ScopedFilter<'a>>) -> ScopedFilter<'a>

Combine filters with OR.

Source

pub fn not(&self, filter: ScopedFilter<'a>) -> ScopedFilter<'a>

Negate a filter.

Source

pub fn build_select(&self, table: &str, filter: ScopedFilter<'a>) -> String

Build a SELECT query string.

Source

pub fn build_select_columns( &self, table: &str, columns: &[&str], filter: ScopedFilter<'a>, ) -> String

Build a SELECT query with specific columns.

Source

pub fn build_query(&self, query: &ScopedQuery<'a>) -> String

Build a complete query with all parts.

Source

pub fn query(&self, table: &str) -> ScopedQuery<'a>

Create a new query builder.

Auto Trait Implementations§

§

impl<'a> Freeze for ArenaScope<'a>

§

impl<'a> !RefUnwindSafe for ArenaScope<'a>

§

impl<'a> !Send for ArenaScope<'a>

§

impl<'a> !Sync for ArenaScope<'a>

§

impl<'a> Unpin for ArenaScope<'a>

§

impl<'a> !UnwindSafe for ArenaScope<'a>

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> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

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

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

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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more