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

chore: make eval_constants a pure function #3027

Merged
merged 5 commits into from
Oct 9, 2023

Conversation

TomAFrench
Copy link
Member

Description

Problem*

Resolves

Summary*

This PR reworks eval_constants into a pure function to make it easier to reason about and test. As part of this I've pulled logic which has leaked into simplify back into the function.

Documentation

  • This PR requires documentation updates when merged.

    • I will submit a noir-lang/docs PR.
    • I will request for and support Dev Rel's help in documenting this PR.

Additional Context

PR Checklist*

  • I have tested the changes locally.
  • I have formatted the changes with Prettier and/or cargo fmt on default settings.

@kevaundray kevaundray added this pull request to the merge queue Oct 9, 2023
Merged via the queue into master with commit 74f4a88 Oct 9, 2023
27 checks passed
@kevaundray kevaundray deleted the tf/pure-constant-binop-evaluation branch October 9, 2023 19:17
TomAFrench added a commit that referenced this pull request Oct 9, 2023
* master:
  chore: make `eval_constants` a pure function (#3027)
  chore: Formatter can now handle cast expressions (#3000)
  chore(tests): Rewrite some compile failure tests (#2850)
  feat: pass brillig bytecode to VM by reference (#3030)
TomAFrench added a commit that referenced this pull request Oct 9, 2023
* master:
  chore: make `eval_constants` a pure function (#3027)
  chore: Formatter can now handle cast expressions (#3000)
  chore(tests): Rewrite some compile failure tests (#2850)
  feat: pass brillig bytecode to VM by reference (#3030)
TomAFrench added a commit that referenced this pull request Oct 10, 2023
* master: (22 commits)
  chore: Update ACIR artifacts (#3013)
  chore: update yarn.lock file (#3064)
  feat(formatter): add formatter support for array literals (#3061)
  chore(traits): updated the trait_function_calls test to include calls to and from static methods (functions without self) (#3034)
  fix: Parse parenthesized lvalues (#3058)
  feat(acir): Set dynamic array values (#3054)
  fix: change non-constant argument errors from `to_be_radix`  from ICE to proper error (#3048)
  feat: add JS types for ABI and input maps (#3023)
  chore: remove clones in optimizer/transformer code (#3037)
  feat: add conditional compilation of methods based on the underlying field being used  (#3045)
  chore: make `eval_constants` a pure function (#3027)
  chore: Formatter can now handle cast expressions (#3000)
  chore(tests): Rewrite some compile failure tests (#2850)
  feat: pass brillig bytecode to VM by reference (#3030)
  chore(formatter): prettier test diff output via `similar-asserts` (#3046)
  fix: disable modulo for fields (#3009)
  chore: parse fieldless structures (#3021)
  chore: publish to npm nightly (#3029)
  chore(tests): Test trait override of MutableReference of struct (#3011)
  chore: Add a flag to nargo to silence warnings (#3032)
  ...
Sakapoi pushed a commit to Sakapoi/noir_fork that referenced this pull request Oct 19, 2023
Co-authored-by: kevaundray <kevtheappdev@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants