Trait arithmetic_eval::VariableMap [−][src]
pub trait VariableMap<'a, T> { fn get_variable(&self, name: &str) -> Option<Value<'a, T>>; fn compile_module<Id, G>(
&self,
id: Id,
block: &Block<'a, G>
) -> Result<ExecutableModule<'a, T>, Error<'a>>
where
Id: ModuleId,
G: Grammar<'a, Lit = T>,
T: Clone + Debug, { ... } }
Expand description
Encapsulates read access to named variables.
Required methods
fn get_variable(&self, name: &str) -> Option<Value<'a, T>>
[src]
fn get_variable(&self, name: &str) -> Option<Value<'a, T>>
[src]Returns value of the named variable, or None
if it is not defined.
Provided methods
fn compile_module<Id, G>(
&self,
id: Id,
block: &Block<'a, G>
) -> Result<ExecutableModule<'a, T>, Error<'a>> where
Id: ModuleId,
G: Grammar<'a, Lit = T>,
T: Clone + Debug,
[src]
fn compile_module<Id, G>(
&self,
id: Id,
block: &Block<'a, G>
) -> Result<ExecutableModule<'a, T>, Error<'a>> where
Id: ModuleId,
G: Grammar<'a, Lit = T>,
T: Clone + Debug,
[src]Creates a module based on imports solely from this map.
The default implementation is reasonable for most cases.
Implementors
impl<'a, T> VariableMap<'a, T> for Comparisons
[src]
impl<'a, T> VariableMap<'a, T> for Comparisons
[src]fn get_variable(&self, name: &str) -> Option<Value<'a, T>>
[src]
impl<'a, T: Clone> VariableMap<'a, T> for Environment<'a, T>
[src]
impl<'a, T: Clone> VariableMap<'a, T> for Environment<'a, T>
[src]fn get_variable(&self, name: &str) -> Option<Value<'a, T>>
[src]
impl<'a, T: Clone> VariableMap<'a, T> for ModuleImports<'a, T>
[src]
impl<'a, T: Clone> VariableMap<'a, T> for ModuleImports<'a, T>
[src]fn get_variable(&self, name: &str) -> Option<Value<'a, T>>
[src]
impl<'a, T: Clone> VariableMap<'a, T> for Prelude
[src]
impl<'a, T: Clone> VariableMap<'a, T> for Prelude
[src]fn get_variable(&self, name: &str) -> Option<Value<'a, T>>
[src]
impl<'a, T: Display> VariableMap<'a, T> for Assertions
[src]
impl<'a, T: Display> VariableMap<'a, T> for Assertions
[src]