pub struct CompiledEvaluator { /* private fields */ }Expand description
Topologically ordered compiled evaluator for repeated provider evaluation.
Implementations§
Source§impl CompiledEvaluator
impl CompiledEvaluator
Sourcepub fn compile(arena: &CausalExprArena, root: ExprId) -> Result<Self, EvalError>
pub fn compile(arena: &CausalExprArena, root: ExprId) -> Result<Self, EvalError>
Compile an expression DAG into slot-addressed ops (post-order).
Continuous ExprNode::IntegralOut is supported (see CausalExprArena::compile).
Sourcepub fn evaluate(
&self,
arena: &CausalExprArena,
provider: &dyn DistributionProvider,
ctx: &EvalContext,
) -> Result<f64, EvalError>
pub fn evaluate( &self, arena: &CausalExprArena, provider: &dyn DistributionProvider, ctx: &EvalContext, ) -> Result<f64, EvalError>
Sourcepub fn evaluate_with(
&self,
arena: &CausalExprArena,
provider: &dyn DistributionProvider,
ctx: &EvalContext,
env: &Assignment,
) -> Result<f64, EvalError>
pub fn evaluate_with( &self, arena: &CausalExprArena, provider: &dyn DistributionProvider, ctx: &EvalContext, env: &Assignment, ) -> Result<f64, EvalError>
Evaluate with an initial variable binding (e.g. do(X=x) and outcome levels).
§Errors
Provider / numeric failures.
Sourcepub fn evaluate_batch(
&self,
arena: &CausalExprArena,
provider: &dyn DistributionProvider,
) -> Result<Vec<f64>, EvalError>
pub fn evaluate_batch( &self, arena: &CausalExprArena, provider: &dyn DistributionProvider, ) -> Result<Vec<f64>, EvalError>
Evaluate over all posterior draws (provider.n_draws()), or a single
empirical evaluation when n_draws is None.
§Errors
Provider / numeric failures.
Trait Implementations§
Source§impl Clone for CompiledEvaluator
impl Clone for CompiledEvaluator
Source§fn clone(&self) -> CompiledEvaluator
fn clone(&self) -> CompiledEvaluator
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for CompiledEvaluator
impl RefUnwindSafe for CompiledEvaluator
impl Send for CompiledEvaluator
impl Sync for CompiledEvaluator
impl Unpin for CompiledEvaluator
impl UnsafeUnpin for CompiledEvaluator
impl UnwindSafe for CompiledEvaluator
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more