Skip to main content

CaptureBuilder

Struct CaptureBuilder 

Source
pub struct CaptureBuilder<Position> { /* private fields */ }
Expand description

The only state that issues capture handles and retains the producer’s matching source positions.

Implementations§

Source§

impl<Position> CaptureBuilder<Position>

Source

pub const fn declared() -> Self

Open one checked capture builder with no issued source positions.

Source

pub fn open(&mut self) -> CaptureLevel<'_, Position>

Open one root level under a fresh capture walk while retaining this builder’s continuous source-handle custody.

A fresh level lets an attribute body and its item stand under separate input bounds and one shared source table. Where the preceding level refused, opening the next rolls back only that attempt’s positions and preserves every handle from earlier finished captures.

Source

pub fn positions(&self) -> &[Position]

The producer positions retained in handle order.

Trait Implementations§

Source§

impl<Position: Clone> Clone for CaptureBuilder<Position>

Source§

fn clone(&self) -> CaptureBuilder<Position>

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<Position: Debug> Debug for CaptureBuilder<Position>

Source§

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

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

impl<Position: Eq> Eq for CaptureBuilder<Position>

Source§

impl<Position: Hash> Hash for CaptureBuilder<Position>

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl<Position: PartialEq> PartialEq for CaptureBuilder<Position>

Source§

fn eq(&self, other: &CaptureBuilder<Position>) -> bool

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

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

Inequality operator !=. Read more
Source§

impl<Position: PartialEq> StructuralPartialEq for CaptureBuilder<Position>

Auto Trait Implementations§

§

impl<Position> Freeze for CaptureBuilder<Position>
where Vec<Position>: Freeze,

§

impl<Position> RefUnwindSafe for CaptureBuilder<Position>
where Vec<Position>: RefUnwindSafe,

§

impl<Position> Send for CaptureBuilder<Position>
where Vec<Position>: Send,

§

impl<Position> Sync for CaptureBuilder<Position>
where Vec<Position>: Sync,

§

impl<Position> Unpin for CaptureBuilder<Position>
where Vec<Position>: Unpin,

§

impl<Position> UnsafeUnpin for CaptureBuilder<Position>
where Vec<Position>: UnsafeUnpin,

§

impl<Position> UnwindSafe for CaptureBuilder<Position>
where Vec<Position>: UnwindSafe,

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.