WIP refactor gmser_dyn

This commit is contained in:
Ulf Wiger
2026-02-15 12:12:04 +01:00
parent dda5cac7a9
commit 8734e67c66
5 changed files with 306 additions and 72 deletions
+17 -4
View File
@@ -17,6 +17,9 @@
, is_id/1
]).
-export([ t_id/1
]).
%% For aec_serialization
-export([ encode/1
, decode/1
@@ -26,11 +29,18 @@
, val
}).
-type tag() :: 'account' | 'name'
| 'commitment' | 'contract' | 'channel'
| 'associate_chain' | 'entry' .
-type tag() :: 'account'
| 'associate_chain'
| 'channel'
| 'commitment'
| 'contract'
| 'contract_source'
| 'name'
| 'native_token'
| 'entry'.
-type val() :: <<_:256>>.
-opaque(id() :: #id{}).
-type id() :: #id{}.
-export_type([ id/0
, tag/0
@@ -94,6 +104,9 @@ decode(<<Tag:?TAG_SIZE/unit:8, Val:?PUB_SIZE/binary>>) ->
#id{ tag = decode_tag(Tag)
, val = Val}.
-spec t_id(any()) -> id().
t_id(#id{} = Id) -> Id.
%%%===================================================================
%%% Internal functions
%%%===================================================================