[−][src]Struct evalexpr::Node
A node in the operator tree.
The operator tree is created by the crate-level build_operator_tree
method.
It can be evaluated for a given configuration with the Node::eval
method.
The advantage of constructing the operator tree separately from the actual evaluation is that it can be evaluated arbitrarily often with different configurations.
Examples
use evalexpr::*; let mut configuration = HashMapConfiguration::new(); configuration.insert_variable("alpha", 2); let node = build_operator_tree("1 + alpha").unwrap(); assert_eq!(node.eval_with_configuration(&configuration), Ok(Value::from(3)));
Methods
impl Node
[src]
pub fn eval_with_configuration(
&self,
configuration: &dyn Configuration
) -> Result<Value, Error>
[src]
&self,
configuration: &dyn Configuration
) -> Result<Value, Error>
Evaluates the operator tree rooted at this node with the given configuration.
Fails, if one of the operators in the expression tree fails.
pub fn eval(&self) -> Result<Value, Error>
[src]
Evaluates the operator tree rooted at this node with an empty configuration.
Fails, if one of the operators in the expression tree fails.
Trait Implementations
Auto Trait Implementations
Blanket Implementations
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T> From for T
[src]
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,