[][src]Trait hlvm::function::Object

pub trait Object: Add<Self> + Sub<Self> + Mul<Self> + Div<Self> + Rem<Self> + Not + Ord + Clone + Debug + Display {
    fn new(value_type: Type, contents: Vec<Number>) -> Self;
fn get_type(&self) -> Type;
fn get_list(&self) -> Vec<Self>;
fn get_contents(&self) -> Vec<Number>;
fn get_attributes(&self) -> Table<Self>;
fn get_foreign_function(&self) -> fn(Self) -> Self;
fn set_type(&mut self, object_type: Type);
fn set_list(&mut self, list: Vec<Self>);
fn set_contents(&mut self, contents: Vec<Number>);
fn set_attributes(&mut self, attributes: Table<Self>);
fn set_foreign_function(&mut self, function: fn(Self) -> Self); default fn empty_instance() -> Self { ... }
default fn from_string(string: String) -> Self { ... }
default fn from_str(string: &str) -> Self { ... }
default fn from_f64(decimal: f64) -> Self { ... }
default fn from_number(n: Number) -> Self { ... }
default fn from_instruction(instruction: Instruction) -> Self { ... }
default fn from_problem(problem: Problem) -> Self { ... }
default fn from_vector(vector: Vec<Self>) -> Self { ... }
default fn from_nothing() -> Self { ... }
default fn from_function(vector: Vec<Self>) -> Self { ... }
default fn from_foreign_function(function: fn(Self) -> Self) -> Self { ... }
default fn get_attr(&self, name: String) -> Self { ... }
default fn as_number(&self) -> Number { ... }
default fn as_usize(&self) -> usize { ... }
default fn as_string(&self) -> String { ... }
default fn as_list(&self) -> Vec<Self> { ... }
default fn as_instruction(&self) -> Instruction { ... }
default fn as_instance(&self) -> Table<Self> { ... }
default fn as_foreign_function(&self) -> fn(Self) -> Self { ... }
default fn set_attr(&mut self, name: String, object: Self) { ... }
default fn get_attr_recursive(&mut self, names: Vec<String>) -> Self { ... }
default fn set_attr_recursive(
        &mut self,
        names: Vec<String>,
        object: Self
    ) -> Self { ... }
default fn index(&mut self, index: Self) -> Self { ... }
default fn list_push(&mut self, object: Self) { ... }
default fn list_pop(&mut self) -> Self { ... }
default fn call_foreign_function(&mut self, parameter: Self) -> Self { ... }
default fn format(&self) -> String { ... }
default fn print(&self) { ... }
default fn println(&self) { ... } }

Required methods

fn new(value_type: Type, contents: Vec<Number>) -> Self

fn get_type(&self) -> Type

fn get_list(&self) -> Vec<Self>

fn get_contents(&self) -> Vec<Number>

fn get_attributes(&self) -> Table<Self>

fn get_foreign_function(&self) -> fn(Self) -> Self

fn set_type(&mut self, object_type: Type)

fn set_list(&mut self, list: Vec<Self>)

fn set_contents(&mut self, contents: Vec<Number>)

fn set_attributes(&mut self, attributes: Table<Self>)

fn set_foreign_function(&mut self, function: fn(Self) -> Self)

Loading content...

Provided methods

default fn empty_instance() -> Self

default fn from_string(string: String) -> Self

default fn from_str(string: &str) -> Self

default fn from_f64(decimal: f64) -> Self

default fn from_number(n: Number) -> Self

default fn from_instruction(instruction: Instruction) -> Self

default fn from_problem(problem: Problem) -> Self

default fn from_vector(vector: Vec<Self>) -> Self

default fn from_nothing() -> Self

default fn from_function(vector: Vec<Self>) -> Self

default fn from_foreign_function(function: fn(Self) -> Self) -> Self

default fn get_attr(&self, name: String) -> Self

default fn as_number(&self) -> Number

default fn as_usize(&self) -> usize

default fn as_string(&self) -> String

default fn as_list(&self) -> Vec<Self>

default fn as_instruction(&self) -> Instruction

default fn as_instance(&self) -> Table<Self>

default fn as_foreign_function(&self) -> fn(Self) -> Self

default fn set_attr(&mut self, name: String, object: Self)

default fn get_attr_recursive(&mut self, names: Vec<String>) -> Self

default fn set_attr_recursive(
    &mut self,
    names: Vec<String>,
    object: Self
) -> Self

default fn index(&mut self, index: Self) -> Self

default fn list_push(&mut self, object: Self)

default fn list_pop(&mut self) -> Self

default fn call_foreign_function(&mut self, parameter: Self) -> Self

default fn format(&self) -> String

default fn print(&self)

default fn println(&self)

Loading content...

Implementors

impl Object for Value[src]

default fn empty_instance() -> Self[src]

default fn from_string(string: String) -> Self[src]

default fn from_str(string: &str) -> Self[src]

default fn from_f64(decimal: f64) -> Self[src]

default fn from_number(n: Number) -> Self[src]

default fn from_instruction(instruction: Instruction) -> Self[src]

default fn from_problem(problem: Problem) -> Self[src]

default fn from_vector(vector: Vec<Self>) -> Self[src]

default fn from_nothing() -> Self[src]

default fn from_function(vector: Vec<Self>) -> Self[src]

default fn from_foreign_function(function: fn(Self) -> Self) -> Self[src]

default fn get_attr(&self, name: String) -> Self[src]

default fn as_number(&self) -> Number[src]

default fn as_usize(&self) -> usize[src]

default fn as_string(&self) -> String[src]

default fn as_list(&self) -> Vec<Self>[src]

default fn as_instruction(&self) -> Instruction[src]

default fn as_instance(&self) -> Table<Self>[src]

default fn as_foreign_function(&self) -> fn(Self) -> Self[src]

default fn set_attr(&mut self, name: String, object: Self)[src]

default fn get_attr_recursive(&mut self, names: Vec<String>) -> Self[src]

default fn set_attr_recursive(
    &mut self,
    names: Vec<String>,
    object: Self
) -> Self
[src]

default fn index(&mut self, index: Self) -> Self[src]

default fn list_push(&mut self, object: Self)[src]

default fn list_pop(&mut self) -> Self[src]

default fn call_foreign_function(&mut self, parameter: Self) -> Self[src]

default fn format(&self) -> String[src]

default fn print(&self)[src]

default fn println(&self)[src]

Loading content...