-
Notifications
You must be signed in to change notification settings - Fork 184
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
feat: nullable note fields info in ABI #8901
Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. |
Changes to public function bytecode sizes
🧾 Summary (100% most significant diffs)
Full diff report 👇
|
@@ -15,6 +15,10 @@ use dispatch::generate_public_dispatch; | |||
|
|||
/// Marks a contract as an Aztec contract, generating the interfaces for its functions and notes, as well as injecting | |||
/// the `compute_note_hash_and_optionally_a_nullifier` function PXE requires in order to validate notes. | |||
/// | |||
/// Note: This is a module annotation, so the returned quote gets injected inside the module (contract) itself. | |||
/// The difference between a module and a regular struct or functionn annotation is that module annotations inject |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The first line of the note is fine, the second one I feel like it's repeating noir docs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nuked that in 352f8a1
@@ -144,14 +148,37 @@ comptime fn generate_note_properties(s: StructDefinition) -> Quoted { | |||
} | |||
} | |||
|
|||
pub(crate) comptime fn generate_note_export(s: StructDefinition, note_type_id: Field) -> Quoted { | |||
/// Generates note export for a given note struct. The export is a global variable that contains note type id, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
❤️
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
6ce30c5
to
352f8a1
Compare
To be able to robustly position publicly delivered fields in the serialized note array when processing notes we need to know the name of each field, index of where the field starts in the serialized note array and whether the field is nullable/partial.