Skip to main content

Class

Trait Class 

Source
pub trait Class: Type + Scope {
    // Required methods
    fn parents(&self) -> &[Vec<String>];
    fn constructors(&self) -> &[Constructor];
    fn constructor(&self, args: &[Rc<dyn Type>]) -> Option<&Constructor>;
    fn predicates(&self) -> Vec<Rc<Predicate>>;
    fn classes(&self) -> Vec<Rc<dyn Class>>;
    fn instances(&self) -> Vec<Rc<Object>>;
}
Expand description

Class-specific API surface layered on top of type and scope behavior.

Required Methods§

Source

fn parents(&self) -> &[Vec<String>]

Source

fn constructors(&self) -> &[Constructor]

Source

fn constructor(&self, args: &[Rc<dyn Type>]) -> Option<&Constructor>

Source

fn predicates(&self) -> Vec<Rc<Predicate>>

Source

fn classes(&self) -> Vec<Rc<dyn Class>>

Source

fn instances(&self) -> Vec<Rc<Object>>

Implementors§