MCPcopy Create free account
hub / github.com/chronoxor/FastBinaryEncoding / AccountMessageFinalModel

Class AccountMessageFinalModel

projects/Python/proto/protoex.py:3909–3974  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3907
3908# Fast Binary Encoding AccountMessage final model
3909class AccountMessageFinalModel(fbe.Model):
3910 __slots__ = "_model",
3911
3912 def __init__(self, buffer=None):
3913 super().__init__(buffer)
3914 self._model = FinalModelAccountMessage(self.buffer, 8)
3915
3916 # Get the model type
3917 @property
3918 def fbe_type(self):
3919 return self.TYPE
3920
3921 TYPE = FinalModelAccountMessage.TYPE
3922
3923 # Check if the struct value is valid
3924 def verify(self):
3925 if (self.buffer.offset + self._model.fbe_offset) > self.buffer.size:
3926 return False
3927
3928 fbe_struct_size = self.read_uint32(self._model.fbe_offset - 8)
3929 fbe_struct_type = self.read_uint32(self._model.fbe_offset - 4)
3930 if (fbe_struct_size <= 0) or (fbe_struct_type != self.fbe_type):
3931 return False
3932
3933 return (8 + self._model.verify()) == fbe_struct_size
3934
3935 # Serialize the struct value
3936 def serialize(self, value):
3937 fbe_initial_size = self.buffer.size
3938
3939 fbe_struct_type = self.fbe_type
3940 fbe_struct_size = 8 + self._model.fbe_allocation_size(value)
3941 fbe_struct_offset = self.buffer.allocate(fbe_struct_size) - self.buffer.offset
3942 assert ((self.buffer.offset + fbe_struct_offset + fbe_struct_size) <= self.buffer.size), "Model is broken!"
3943 if (self.buffer.offset + fbe_struct_offset + fbe_struct_size) > self.buffer.size:
3944 return 0
3945
3946 fbe_struct_size = 8 + self._model.set(value)
3947 self.buffer.resize(fbe_initial_size + fbe_struct_size)
3948
3949 self.write_uint32(self._model.fbe_offset - 8, fbe_struct_size)
3950 self.write_uint32(self._model.fbe_offset - 4, fbe_struct_type)
3951
3952 return fbe_struct_size
3953
3954 # Deserialize the struct value
3955 def deserialize(self, value=None):
3956 if value is None:
3957 value = AccountMessage()
3958
3959 assert ((self.buffer.offset + self._model.fbe_offset) <= self.buffer.size), "Model is broken!"
3960 if (self.buffer.offset + self._model.fbe_offset) > self.buffer.size:
3961 return AccountMessage(), 0
3962
3963 fbe_struct_size = self.read_uint32(self._model.fbe_offset - 8)
3964 fbe_struct_type = self.read_uint32(self._model.fbe_offset - 4)
3965 assert ((fbe_struct_size > 0) and (fbe_struct_type == self.fbe_type)), "Model is broken!"
3966 if (fbe_struct_size <= 0) or (fbe_struct_type != self.fbe_type):

Callers 2

__init__Method · 0.70
__init__Method · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected