pub struct LazyThunkObject { /* private fields */ }Expand description
A non-memoizing thunk that re-evaluates its expression on every force.
Used by call-by-name style policies: forcing always re-runs the captured expression in its captured environment and never caches the result.
Implementations§
Trait Implementations§
Source§impl Object for LazyThunkObject
impl Object for LazyThunkObject
Source§fn display(&self, _cx: &mut Cx) -> Result<String>
fn display(&self, _cx: &mut Cx) -> Result<String>
Render the object as a human-readable display string.
Source§fn header(&self) -> &ObjectHeader
fn header(&self) -> &ObjectHeader
Identity and trust header for the object; defaults to the shared
anonymous header.
Source§fn op(&self, _key: &OpKey) -> Option<&dyn Op>
fn op(&self, _key: &OpKey) -> Option<&dyn Op>
Resolve the operation registered under
key, if any.Source§impl ObjectCompat for LazyThunkObject
impl ObjectCompat for LazyThunkObject
Source§fn class(&self, cx: &mut Cx) -> Result<Value>
fn class(&self, cx: &mut Cx) -> Result<Value>
Class object this value belongs to; defaults to nil.
Source§fn as_expr(&self, _cx: &mut Cx) -> Result<Expr>
fn as_expr(&self, _cx: &mut Cx) -> Result<Expr>
Expression form of the object; defaults to an opaque extension node.
Source§fn as_callable(&self) -> Option<&dyn Callable>
fn as_callable(&self) -> Option<&dyn Callable>
Callable view, if the object can be invoked.
Source§fn as_object_encoder(&self) -> Option<&dyn ObjectEncode>
fn as_object_encoder(&self) -> Option<&dyn ObjectEncode>
Object-encoder view, if the object encodes other objects.
Source§fn as_read_constructor(&self) -> Option<&dyn ReadConstructor>
fn as_read_constructor(&self) -> Option<&dyn ReadConstructor>
Read-constructor view, if the object decodes data forms.
Source§fn as_number_domain(&self) -> Option<&dyn NumberDomain>
fn as_number_domain(&self) -> Option<&dyn NumberDomain>
Number-domain view, if the object is a number domain.
Source§fn as_number_value(&self) -> Option<&dyn NumberValue>
fn as_number_value(&self) -> Option<&dyn NumberValue>
Number-value view, if the object is a domain number.
Source§fn as_eval_fabric(&self) -> Option<&dyn EvalFabric>
fn as_eval_fabric(&self) -> Option<&dyn EvalFabric>
Eval-fabric view, if the object is a distributed eval surface.
Source§fn as_sequence(&self) -> Option<&dyn Sequence>
fn as_sequence(&self) -> Option<&dyn Sequence>
Sequence view, if the object is a sequence.
Source§fn as_table_impl(&self) -> Option<&dyn Table>
fn as_table_impl(&self) -> Option<&dyn Table>
Table-implementation view, if the object is a table.
Auto Trait Implementations§
impl !Freeze for LazyThunkObject
impl RefUnwindSafe for LazyThunkObject
impl Send for LazyThunkObject
impl Sync for LazyThunkObject
impl Unpin for LazyThunkObject
impl UnsafeUnpin for LazyThunkObject
impl UnwindSafe for LazyThunkObject
Blanket Implementations§
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