Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Eager Execution] Track null values as completed in EvalResultHolders #634

Merged
merged 1 commit into from
Apr 8, 2021

Conversation

jasmith-hs
Copy link
Contributor

@jasmith-hs jasmith-hs commented Apr 8, 2021

With the EvalResultHolders, if super.eval() returns null, we should count that as having an evaluation result. Therefore we need a separate boolean to keep track of if there's an eval result rather than simply tracking if the evalResult != null. A strong example is a custom void function. It will return null when evaluated, but we want to track that it has been called already (in case of a DeferredParsingException) so that it doesn't get called twice.

Instead of writing test classes for every kind of AstNode, I just wrote a simple one for EagerAstIdentifier that makes sure a null context value will be stored as the eval result and that we know that the AstIdentifier has already been evaluated when it finds that.

This was found/is needed to make a test case pass in #632 after its merge with master due to #629

@jasmith-hs jasmith-hs merged commit a5bc656 into master Apr 8, 2021
@jasmith-hs jasmith-hs deleted the chunk-resolver-parser branch April 8, 2021 14:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants