Skip to content

Commit 25a1842

Browse files
Added a new TlvSerializable class to Python client
1 parent 33ba36f commit 25a1842

File tree

5 files changed

+148
-161
lines changed

5 files changed

+148
-161
lines changed

client/src/ledger_app_clients/ethereum/enum_value.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from enum import IntEnum
22
from typing import Optional
3-
from .tlv import format_tlv
3+
from .tlv import TlvSerializable
44
from .keychain import sign_data, Key
55

66

@@ -15,7 +15,7 @@ class Tag(IntEnum):
1515
SIGNATURE = 0xff
1616

1717

18-
class EnumValue:
18+
class EnumValue(TlvSerializable):
1919
version: int
2020
chain_id: int
2121
contract_addr: bytes
@@ -45,15 +45,15 @@ def __init__(self,
4545

4646
def serialize(self) -> bytes:
4747
payload = bytearray()
48-
payload += format_tlv(Tag.VERSION, self.version)
49-
payload += format_tlv(Tag.CHAIN_ID, self.chain_id)
50-
payload += format_tlv(Tag.CONTRACT_ADDR, self.contract_addr)
51-
payload += format_tlv(Tag.SELECTOR, self.selector)
52-
payload += format_tlv(Tag.ID, self.id)
53-
payload += format_tlv(Tag.VALUE, self.value)
54-
payload += format_tlv(Tag.NAME, self.name)
48+
payload += self.serialize_field(Tag.VERSION, self.version)
49+
payload += self.serialize_field(Tag.CHAIN_ID, self.chain_id)
50+
payload += self.serialize_field(Tag.CONTRACT_ADDR, self.contract_addr)
51+
payload += self.serialize_field(Tag.SELECTOR, self.selector)
52+
payload += self.serialize_field(Tag.ID, self.id)
53+
payload += self.serialize_field(Tag.VALUE, self.value)
54+
payload += self.serialize_field(Tag.NAME, self.name)
5555
sig = self.signature
5656
if sig is None:
5757
sig = sign_data(Key.CALLDATA, payload)
58-
payload += format_tlv(Tag.SIGNATURE, sig)
58+
payload += self.serialize_field(Tag.SIGNATURE, sig)
5959
return payload

0 commit comments

Comments
 (0)