pub trait Eval {
type Elem: Send;
// Required methods
fn leaf(&self, terminal: Symbol, values: u32) -> Self::Elem;
fn product(&self, action: u32, list: Vec<Self::Elem>) -> Self::Elem;
}pub trait Eval {
type Elem: Send;
// Required methods
fn leaf(&self, terminal: Symbol, values: u32) -> Self::Elem;
fn product(&self, action: u32, list: Vec<Self::Elem>) -> Self::Elem;
}