feat: Allow secret functions to use public parameters #1051
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Related issue(s)
No formal issue but resolves an issue in example 1.3 of the noir-aztec3-examples.
Description
Summary of changes
Allows 'secret' functions in contracts to take public parameters and have public return values.
With this the generated abi for the file looks like the following. (
...
marks omitted lines)Dependency additions / changes
Test additions / changes
Checklist
cargo fmt
with default settings.Documentation needs
Once contract functions are documented, we'll need to also document that
secret
functions (the default) can usepub
parameters and their return values must also bepub
. They cannot usepub
if they are alsounconstrained
.Additional context