cl_interpret::function::collect_upvars

Struct CollectUpvars

Source
pub struct CollectUpvars<'env> { /* private fields */ }

Implementations§

Source§

impl<'env> CollectUpvars<'env>

Source

pub fn new(env: &'env Environment) -> Self

Source

pub fn get_upvars(self, f: &Function) -> HashMap<Sym, Option<ConValue>>

Source

pub fn add_upvar(&mut self, name: &Sym)

Source

pub fn bind_name(&mut self, name: &Sym)

Trait Implementations§

Source§

impl<'env> Clone for CollectUpvars<'env>

Source§

fn clone(&self) -> CollectUpvars<'env>

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<'env> Debug for CollectUpvars<'env>

Source§

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

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

impl<'a> Visit<'a> for CollectUpvars<'_>

Source§

fn visit_block(&mut self, b: &'a Block)

Source§

fn visit_let(&mut self, l: &'a Let)

Source§

fn visit_function(&mut self, f: &'a Function)

Source§

fn visit_for(&mut self, f: &'a For)

Source§

fn visit_path(&mut self, p: &'a Path)

Source§

fn visit_fielder(&mut self, f: &'a Fielder)

Source§

fn visit_pattern(&mut self, p: &'a Pattern)

Source§

fn visit_span(&mut self, _extents: &'a Span)

Source§

fn visit_mutability(&mut self, _mutable: &'a Mutability)

Source§

fn visit_visibility(&mut self, _vis: &'a Visibility)

Source§

fn visit_sym(&mut self, _name: &'a Interned<'static, str>)

Source§

fn visit_literal(&mut self, l: &'a Literal)

Source§

fn visit_bool(&mut self, _b: &'a bool)

Source§

fn visit_char(&mut self, _c: &'a char)

Source§

fn visit_int(&mut self, _i: &'a u128)

Source§

fn visit_smuggled_float(&mut self, _f: &'a u64)

Source§

fn visit_string(&mut self, _s: &'a str)

Source§

fn visit_file(&mut self, f: &'a File)

Source§

fn visit_attrs(&mut self, a: &'a Attrs)

Source§

fn visit_meta(&mut self, m: &'a Meta)

Source§

fn visit_meta_kind(&mut self, kind: &'a MetaKind)

Source§

fn visit_item(&mut self, i: &'a Item)

Source§

fn visit_item_kind(&mut self, kind: &'a ItemKind)

Source§

fn visit_alias(&mut self, a: &'a Alias)

Source§

fn visit_const(&mut self, c: &'a Const)

Source§

fn visit_static(&mut self, s: &'a Static)

Source§

fn visit_module(&mut self, m: &'a Module)

Source§

fn visit_module_kind(&mut self, kind: &'a ModuleKind)

Source§

fn visit_param(&mut self, p: &'a Param)

Source§

fn visit_struct(&mut self, s: &'a Struct)

Source§

fn visit_struct_kind(&mut self, kind: &'a StructKind)

Source§

fn visit_struct_member(&mut self, m: &'a StructMember)

Source§

fn visit_enum(&mut self, e: &'a Enum)

Source§

fn visit_enum_kind(&mut self, kind: &'a EnumKind)

Source§

fn visit_variant(&mut self, v: &'a Variant)

Source§

fn visit_variant_kind(&mut self, kind: &'a VariantKind)

Source§

fn visit_impl(&mut self, i: &'a Impl)

Source§

fn visit_impl_kind(&mut self, target: &'a ImplKind)

Source§

fn visit_use(&mut self, u: &'a Use)

Source§

fn visit_use_tree(&mut self, tree: &'a UseTree)

Source§

fn visit_ty(&mut self, t: &'a Ty)

Source§

fn visit_ty_kind(&mut self, kind: &'a TyKind)

Source§

fn visit_ty_array(&mut self, a: &'a TyArray)

Source§

fn visit_ty_slice(&mut self, s: &'a TySlice)

Source§

fn visit_ty_tuple(&mut self, t: &'a TyTuple)

Source§

fn visit_ty_ref(&mut self, t: &'a TyRef)

Source§

fn visit_ty_fn(&mut self, t: &'a TyFn)

Source§

fn visit_path_part(&mut self, p: &'a PathPart)

Source§

fn visit_stmt(&mut self, s: &'a Stmt)

Source§

fn visit_stmt_kind(&mut self, kind: &'a StmtKind)

Source§

fn visit_semi(&mut self, _s: &'a Semi)

Source§

fn visit_expr(&mut self, e: &'a Expr)

Source§

fn visit_expr_kind(&mut self, e: &'a ExprKind)

Source§

fn visit_match(&mut self, m: &'a Match)

Source§

fn visit_match_arm(&mut self, a: &'a MatchArm)

Source§

fn visit_assign(&mut self, a: &'a Assign)

Source§

fn visit_modify(&mut self, m: &'a Modify)

Source§

fn visit_modify_kind(&mut self, _kind: &'a ModifyKind)

Source§

fn visit_binary(&mut self, b: &'a Binary)

Source§

fn visit_binary_kind(&mut self, _kind: &'a BinaryKind)

Source§

fn visit_unary(&mut self, u: &'a Unary)

Source§

fn visit_unary_kind(&mut self, _kind: &'a UnaryKind)

Source§

fn visit_cast(&mut self, cast: &'a Cast)

Source§

fn visit_member(&mut self, m: &'a Member)

Source§

fn visit_member_kind(&mut self, kind: &'a MemberKind)

Source§

fn visit_index(&mut self, i: &'a Index)

Source§

fn visit_structor(&mut self, s: &'a Structor)

Source§

fn visit_array(&mut self, a: &'a Array)

Source§

fn visit_array_rep(&mut self, a: &'a ArrayRep)

Source§

fn visit_addrof(&mut self, a: &'a AddrOf)

Source§

fn visit_group(&mut self, g: &'a Group)

Source§

fn visit_tuple(&mut self, t: &'a Tuple)

Source§

fn visit_while(&mut self, w: &'a While)

Source§

fn visit_if(&mut self, i: &'a If)

Source§

fn visit_else(&mut self, e: &'a Else)

Source§

fn visit_break(&mut self, b: &'a Break)

Source§

fn visit_return(&mut self, r: &'a Return)

Source§

fn visit_continue(&mut self)

Auto Trait Implementations§

§

impl<'env> Freeze for CollectUpvars<'env>

§

impl<'env> !RefUnwindSafe for CollectUpvars<'env>

§

impl<'env> !Send for CollectUpvars<'env>

§

impl<'env> !Sync for CollectUpvars<'env>

§

impl<'env> Unpin for CollectUpvars<'env>

§

impl<'env> !UnwindSafe for CollectUpvars<'env>

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, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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 = 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.