pub struct BuiltinRegistry { /* private fields */ }Expand description
Registry of builtin functions accessible from the VM.
Implementations§
Source§impl BuiltinRegistry
impl BuiltinRegistry
Sourcepub fn lookup(&self, name: &str) -> Option<u16>
pub fn lookup(&self, name: &str) -> Option<u16>
Look up a builtin by name, returning its index.
Sourcepub fn call(&self, index: u16, args: Vec<VMValue>) -> Result<VMValue, VMError>
pub fn call(&self, index: u16, args: Vec<VMValue>) -> Result<VMValue, VMError>
Call a builtin by index.
Sourcepub fn make_builtins_attrset(&self, interner: &mut Interner) -> VMValue
pub fn make_builtins_attrset(&self, interner: &mut Interner) -> VMValue
Build the builtins attribute set with all registered builtins.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for BuiltinRegistry
impl !Send for BuiltinRegistry
impl !Sync for BuiltinRegistry
impl !UnwindSafe for BuiltinRegistry
impl Freeze for BuiltinRegistry
impl Unpin for BuiltinRegistry
impl UnsafeUnpin for BuiltinRegistry
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.