LangObject

Struct LangObject 

Source
pub struct LangObject { /* private fields */ }

Implementations§

Source§

impl LangObject

Source

pub fn object_class() -> LangObjectRef

Returns the “&Object” lang object base class

Source

pub fn new_class( class_name: Option<&str>, static_members: Vec<DataObject>, members: Vec<MemberDefinition>, methods: HashMap<Box<str>, FunctionPointerObject>, method_override_flags: HashMap<Box<str>, Vec<bool>>, method_visibility: HashMap<Box<str>, Vec<Visibility>>, constructors: FunctionPointerObject, constructor_visibility: Vec<Visibility>, parent_classes: Vec<LangObjectRef>, ) -> Result<LangObjectRef, DataTypeConstraintError>

Source

pub fn new_object( class_base_definition: &LangObjectRef, ) -> Result<LangObjectRef, DataTypeConstraintError>

The constructor must be called separately, afterward postConstructor must be called

Source

pub fn super_level(&self) -> Option<usize>

Source

pub fn set_super_level( &mut self, super_level: usize, ) -> Result<(), DataTypeConstraintError>

Source

pub fn post_construct(&mut self) -> Result<(), DataTypeConstraintError>

Source

pub fn is_initialized(&self) -> Option<bool>

Source

pub fn is_class(&self) -> bool

Source

pub fn class_name(&self) -> Option<&str>

Source

pub fn static_members(&self) -> &[DataObjectRef]

Source

pub fn index_of_static_member(&self, member_name: &str) -> Option<usize>

Source

pub fn static_member( &self, member_name: &str, ) -> Result<&DataObjectRef, DataTypeConstraintError>

Source

pub fn member_definitions(&self) -> Option<&[MemberDefinition]>

Source

pub fn members(&self) -> Option<&[DataObjectRef]>

Source

pub fn index_of_member( &self, member_name: &str, ) -> Result<Option<usize>, DataTypeConstraintError>

Source

pub fn member( &self, member_name: &str, ) -> Result<&DataObjectRef, DataTypeConstraintError>

Source

pub fn methods(&self) -> &HashMap<Box<str>, Gc<FunctionPointerObject>>

Source

pub fn super_methods(&self) -> HashMap<Box<str>, FunctionPointerObjectRef>

Source

pub fn constructors(&self) -> FunctionPointerObjectRef

Source

pub fn constructors_for_current_super_level(&self) -> FunctionPointerObjectRef

@return Returns all constructors for the current super level without going to super [0 is current, 1 is parent, 2 is grandparent]

Source

pub fn super_constructors(&self) -> FunctionPointerObjectRef

Source

pub fn parent_classes(&self) -> Option<&[LangObjectRef]>

Source

pub fn base_definition(&self) -> OptionLangObjectRef

Source

pub fn is_instance_of(&self, lang_object: &LangObject) -> bool

Trait Implementations§

Source§

impl Debug for LangObject

Source§

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

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

impl Display for LangObject

Source§

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

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

impl Drop for LangObject

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl Finalize for LangObject

Source§

impl Trace for LangObject

Source§

unsafe fn trace(&self)

Marks all contained Gcs.
Source§

unsafe fn root(&self)

Increments the root-count of all contained Gcs.
Source§

unsafe fn unroot(&self)

Decrements the root-count of all contained Gcs.
Source§

fn finalize_glue(&self)

Runs Finalize::finalize() on this object and all contained subobjects

Auto Trait Implementations§

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> 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> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. 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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V