SIGN IN SIGN UP

topdown: memoize partial set/object results (#3492)

We can either cache individual elements (`data.foo.p["bar"]`), or the
full extent of a partial set/object. A cached full extent of the partial
would be used when evaluating individual elements of the partial.

If the first encounter with a partial set/object has to materialize the
full extent with a variable key, like `data.foo.p[x]`, then we cache the
fully-evaluated result for `data.foo.p`.

Fixes #822.

Co-authored-by: Torin Sandall <torinsandall@gmail.com>
Signed-off-by: Stephan Renatus <stephan.renatus@gmail.com>
S
Stephan Renatus committed
f3284cfc7bf4bf39c96a1f676ada690bed8e1f48
Parent: 44436dc
Committed by GitHub <noreply@github.com> on 7/14/2021, 8:09:05 AM