nightly-2024-07-15: feat: Allow comptime attributes on traits & functions (#5496)
Pre-release
Pre-release
github-actions
released this
15 Jul 02:21
·
864 commits
to master
since this release
# Description ## Problem\* Resolves https://github.com/noir-lang/noir/issues/5477 ## Summary\* Adds: - The ability to run `comptime` attribute functions on traits & functions in the program - The `TraitDefinition` type - The `FunctionDefinition` type - The `Module` type - the only one of the new types which you still can't run attributes on. See: https://github.com/noir-lang/noir/issues/5495. Running these on modules is a bit more difficult since modules don't have an entry in `CollectedItems` to run them on. So I'm delaying this for a later PR. ## Additional Context ## Documentation\* Check one: - [ ] No documentation needed. - [ ] Documentation included in this PR. - [x] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [x] I have tested the changes locally. - [x] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.