pub enum Verdict {
Incremental,
Trivial,
Recompute {
because: String,
},
Effectful {
effects: Vec<Effect>,
},
}Expand description
What a view engine could do with one vertex.
Variants§
Incremental
Every operation has a delta rule: this vertex could be maintained rather than recomputed.
Trivial
Pure, and it applies no collection operation at all — a vertex that rebuilds a value from
its inputs, as map2(combine, board, here) does when combine is a record constructor.
Neither of the two interesting answers: there is nothing to maintain by delta and nothing
that would cost a recount. It is its own verdict because saying “incremental” about it
produced a row with an empty explanation, which is what
incremental.rs’s “none of them is a mystery” gate exists to catch — and did, the first
time a program in the corpus applied nothing (docs/96 §96.5).
Recompute
Pure, but something in it has no delta rule. The reason names the first blocker found, in source order, because the first is the one to fix.
Effectful
The row is not empty, so §3.8’s precondition fails before the shape is even looked at.