[][src]Trait litto::value::AbstractValue

pub trait AbstractValue<L: Interpreter>: Trace + Display + Debug {
    fn apply(
        &self,
        env: &L::Env,
        args: &[L::Expr]
    ) -> Result<L::Value, L::Error> { ... } }

An abstract interface for Value that supports function calls.

Provided methods

fn apply(&self, env: &L::Env, args: &[L::Expr]) -> Result<L::Value, L::Error>

Call a function.

This can have side effect on env. Errors might be used for special control flow purposes.

Loading content...

Implementors

impl AbstractValue<TinyLang> for Bool[src]

impl AbstractValue<TinyLang> for Int[src]

impl AbstractValue<TinyLang> for List[src]

impl AbstractValue<TinyLang> for Quote[src]

impl AbstractValue<TinyLang> for Str[src]

impl AbstractValue<TinyLang> for NativeProcedure[src]

impl AbstractValue<TinyLang> for Nil[src]

impl AbstractValue<TinyLang> for Procedure[src]

Loading content...