pub struct Frame {
pub call: Expr,
pub to: Obj,
pub env: Rc<Environment>,
}
Fields§
§call: Expr
§to: Obj
§env: Rc<Environment>
Implementations§
Trait Implementations§
source§impl Context for Frame
impl Context for Frame
fn env(&self) -> Rc<Environment>
fn eval_mut(&mut self, expr: Expr) -> EvalResult
fn get(&mut self, name: String) -> EvalResult
fn get_mut(&mut self, name: String) -> EvalResult
fn get_ellipsis(&mut self) -> EvalResult
fn assign_lazy(&mut self, _to: Expr, _from: Expr) -> EvalResult
fn assign(&mut self, _to: Expr, _from: Obj) -> EvalResult
fn eval_call(&mut self, expr: Expr) -> EvalResult
fn eval_call_mut(&mut self, expr: Expr) -> EvalResult
fn eval(&mut self, expr: Expr) -> EvalResult
fn eval_in(&mut self, expr: Expr, env: Rc<Environment>) -> EvalResult
fn eval_and_finalize(&mut self, expr: Expr) -> EvalResult
fn eval_binary(&mut self, exprs: (Expr, Expr)) -> Result<(Obj, Obj), Signal>
fn eval_list_lazy(&mut self, l: ExprList) -> EvalResult
impl StructuralPartialEq for Frame
Auto Trait Implementations§
impl Freeze for Frame
impl !RefUnwindSafe for Frame
impl !Send for Frame
impl !Sync for Frame
impl Unpin for Frame
impl !UnwindSafe for Frame
Blanket Implementations§
source§impl<T> AsDynCompare for Twhere
T: Any + DynCompare,
impl<T> AsDynCompare for Twhere
T: Any + DynCompare,
fn as_any(&self) -> &(dyn Any + 'static)
fn as_dyn_compare(&self) -> &(dyn DynCompare + 'static)
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> DynCompare for T
impl<T> DynCompare for T
fn dyn_eq(&self, other: &(dyn DynCompare + 'static)) -> bool
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more