Proto/Michelson: refactor management of metadata in ty smart constructors
Context
Metadata on type _ ty
are currently defined as the one-field record type 'a ty_metadata = {size : 'a Type_size.t}
. This MR refactors the functions building types and metadata to make the code safer (by using more specialized functions) and to limit the dependency on the definition of this metadata type (to ease future extensions of this type).
Manually testing the MR
This is a purely internal refactoring. This MR should have no visible effect outside of the Script_typed_ir
module.
Checklist
-
Document the interface of any function added or modified (see the coding guidelines) -
Document any change to the user interface, including configuration parameters (see node configuration) -
Provide automatic testing (see the testing guide). -
For new features and bug fixes, add an item in the appropriate changelog ( docs/protocols/alpha.rst
for the protocol and the environment,CHANGES.rst
at the root of the repository for everything else). -
Select suitable reviewers using the Reviewers
field below. -
Select as Assignee
the next person who should take action on that MR