Expand description
Whether a stored expression can modify data anywhere in its own tree.
Used at definition time to reject a COMPUTED field body that writes: the
walk descends into subqueries, idioms, blocks and closure bodies, so a
mutation anywhere inside the body itself is found.
A function call stays opaque: the calleeās body lives in the catalog,
which this crate cannot see, and whether it writes may depend on which
branch the arguments select. Those are left to the runtime write refusal
(Options::no_write), which fires at the point a write is actually
reached. Call arguments are evaluated in place and are therefore walked.