pub struct Heap { /* private fields */ }Implementations§
Source§impl Heap
impl Heap
pub fn new() -> Self
pub fn get(&self, pointer: &Pointer) -> Result<ValueRef, EngineError>
pub fn type_name(&self, pointer: &Pointer) -> Result<&'static str, EngineError>
pub fn pointer_as_bool(&self, pointer: &Pointer) -> Result<bool, EngineError>
pub fn pointer_as_u8(&self, pointer: &Pointer) -> Result<u8, EngineError>
pub fn pointer_as_u16(&self, pointer: &Pointer) -> Result<u16, EngineError>
pub fn pointer_as_u32(&self, pointer: &Pointer) -> Result<u32, EngineError>
pub fn pointer_as_u64(&self, pointer: &Pointer) -> Result<u64, EngineError>
pub fn pointer_as_i8(&self, pointer: &Pointer) -> Result<i8, EngineError>
pub fn pointer_as_i16(&self, pointer: &Pointer) -> Result<i16, EngineError>
pub fn pointer_as_i32(&self, pointer: &Pointer) -> Result<i32, EngineError>
pub fn pointer_as_i64(&self, pointer: &Pointer) -> Result<i64, EngineError>
pub fn pointer_as_f32(&self, pointer: &Pointer) -> Result<f32, EngineError>
pub fn pointer_as_f64(&self, pointer: &Pointer) -> Result<f64, EngineError>
pub fn pointer_as_string( &self, pointer: &Pointer, ) -> Result<String, EngineError>
pub fn pointer_as_uuid(&self, pointer: &Pointer) -> Result<Uuid, EngineError>
pub fn pointer_as_datetime( &self, pointer: &Pointer, ) -> Result<DateTime<Utc>, EngineError>
pub fn pointer_as_tuple( &self, pointer: &Pointer, ) -> Result<Vec<Pointer>, EngineError>
pub fn pointer_as_array( &self, pointer: &Pointer, ) -> Result<Vec<Pointer>, EngineError>
pub fn pointer_as_dict( &self, pointer: &Pointer, ) -> Result<BTreeMap<Symbol, Pointer>, EngineError>
pub fn pointer_as_adt( &self, pointer: &Pointer, ) -> Result<(Symbol, Vec<Pointer>), EngineError>
pub fn pointer_as_uninitialized( &self, pointer: &Pointer, ) -> Result<Symbol, EngineError>
pub fn pointer_as_closure( &self, pointer: &Pointer, ) -> Result<Closure, EngineError>
pub fn pointer_as_native( &self, pointer: &Pointer, ) -> Result<NativeFn, EngineError>
pub fn pointer_as_overloaded( &self, pointer: &Pointer, ) -> Result<OverloadedFn, EngineError>
pub fn alloc_bool(&self, value: bool) -> Result<Pointer, EngineError>
pub fn alloc_u8(&self, value: u8) -> Result<Pointer, EngineError>
pub fn alloc_u16(&self, value: u16) -> Result<Pointer, EngineError>
pub fn alloc_u32(&self, value: u32) -> Result<Pointer, EngineError>
pub fn alloc_u64(&self, value: u64) -> Result<Pointer, EngineError>
pub fn alloc_i8(&self, value: i8) -> Result<Pointer, EngineError>
pub fn alloc_i16(&self, value: i16) -> Result<Pointer, EngineError>
pub fn alloc_i32(&self, value: i32) -> Result<Pointer, EngineError>
pub fn alloc_i64(&self, value: i64) -> Result<Pointer, EngineError>
pub fn alloc_f32(&self, value: f32) -> Result<Pointer, EngineError>
pub fn alloc_f64(&self, value: f64) -> Result<Pointer, EngineError>
pub fn alloc_string(&self, value: String) -> Result<Pointer, EngineError>
pub fn alloc_uuid(&self, value: Uuid) -> Result<Pointer, EngineError>
pub fn alloc_datetime( &self, value: DateTime<Utc>, ) -> Result<Pointer, EngineError>
pub fn alloc_value(&self, value: Value) -> Result<Pointer, EngineError>
pub fn alloc_tuple(&self, values: Vec<Pointer>) -> Result<Pointer, EngineError>
pub fn alloc_array(&self, values: Vec<Pointer>) -> Result<Pointer, EngineError>
pub fn alloc_dict( &self, values: BTreeMap<Symbol, Pointer>, ) -> Result<Pointer, EngineError>
pub fn alloc_adt( &self, name: Symbol, args: Vec<Pointer>, ) -> Result<Pointer, EngineError>
pub fn alloc_closure( &self, env: Env, param: Symbol, param_ty: Type, typ: Type, body: Arc<TypedExpr>, ) -> Result<Pointer, EngineError>
pub fn alloc_overloaded( &self, name: Symbol, typ: Type, applied: Vec<Pointer>, applied_types: Vec<Type>, ) -> Result<Pointer, EngineError>
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Heap
impl RefUnwindSafe for Heap
impl Send for Heap
impl Sync for Heap
impl Unpin for Heap
impl UnsafeUnpin for Heap
impl UnwindSafe for Heap
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