MCPcopy Create free account
hub / github.com/MaterializeInc/materialize / analyse_pessimistic

Method analyse_pessimistic

src/transform/src/analysis.rs:467–474  ·  view source on GitHub ↗

Analysis that starts conservatively and can be stopped at any point. Result indicates whether new information was produced for `exprs.last()`.

(&mut self, exprs: &[&MirRelationExpr], depends: &Derived)

Source from the content-addressed store, hash-verified

465 ///
466 /// Result indicates whether new information was produced for `exprs.last()`.
467 fn analyse_pessimistic(&mut self, exprs: &[&MirRelationExpr], depends: &Derived) -> bool {
468 // TODO: consider making iterative, from some `bottom()` up using `join_assign()`.
469 self.results.clear();
470 for (index, expr) in exprs.iter().enumerate() {
471 self.results.push(self.derive(expr, index, depends));
472 }
473 true
474 }
475
476 #[inline]
477 fn derive(&self, expr: &MirRelationExpr, index: usize, depends: &Derived) -> A::Value {

Callers 1

analyseMethod · 0.80

Calls 5

enumerateMethod · 0.80
clearMethod · 0.45
iterMethod · 0.45
pushMethod · 0.45
deriveMethod · 0.45

Tested by

no test coverage detected