[][src]Trait arithmetic_eval::NativeFn

pub trait NativeFn<T: Grammar> {
    fn evaluate<'a>(
        &self,
        args: Vec<SpannedValue<'a, T>>,
        context: &mut CallContext<'_, 'a>
    ) -> EvalResult<'a, T>; }

Function on zero or more Values.

Required methods

fn evaluate<'a>(
    &self,
    args: Vec<SpannedValue<'a, T>>,
    context: &mut CallContext<'_, 'a>
) -> EvalResult<'a, T>

Executes the function on the specified arguments.

Loading content...

Trait Implementations

impl<T: Grammar> Debug for dyn NativeFn<T>[src]

Implementors

impl<F, T> NativeFn<T> for Binary<F> where
    T: Grammar,
    F: Fn(T::Lit, T::Lit) -> T::Lit
[src]

impl<F, T> NativeFn<T> for Unary<F> where
    T: Grammar,
    F: Fn(T::Lit) -> T::Lit
[src]

impl<T> NativeFn<T> for Compare where
    T: Grammar,
    T::Lit: Num + Neg<Output = T::Lit> + Pow<T::Lit, Output = T::Lit> + PartialOrd
[src]

impl<T> NativeFn<T> for Filter where
    T: Grammar,
    T::Lit: Num + Neg<Output = T::Lit> + Pow<T::Lit, Output = T::Lit>, 
[src]

impl<T> NativeFn<T> for Fold where
    T: Grammar,
    T::Lit: Num + Neg<Output = T::Lit> + Pow<T::Lit, Output = T::Lit>, 
[src]

impl<T> NativeFn<T> for If where
    T: Grammar,
    T::Lit: Num + Neg<Output = T::Lit> + Pow<T::Lit, Output = T::Lit>, 
[src]

impl<T> NativeFn<T> for Loop where
    T: Grammar,
    T::Lit: Num + Neg<Output = T::Lit> + Pow<T::Lit, Output = T::Lit>, 
[src]

impl<T> NativeFn<T> for Map where
    T: Grammar,
    T::Lit: Num + Neg<Output = T::Lit> + Pow<T::Lit, Output = T::Lit>, 
[src]

impl<T> NativeFn<T> for Merge where
    T: Grammar,
    T::Lit: Num + Neg<Output = T::Lit> + Pow<T::Lit, Output = T::Lit>, 
[src]

impl<T> NativeFn<T> for Push where
    T: Grammar,
    T::Lit: Num + Neg<Output = T::Lit> + Pow<T::Lit, Output = T::Lit>, 
[src]

impl<T: Grammar> NativeFn<T> for Assert[src]

Loading content...