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

Class AccountMessageFinalModel

projects/Python/proto/proto.py:3792–3857  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3790
3791# Fast Binary Encoding AccountMessage final model
3792class AccountMessageFinalModel(fbe.Model):
3793 __slots__ = "_model",
3794
3795 def __init__(self, buffer=None):
3796 super().__init__(buffer)
3797 self._model = FinalModelAccountMessage(self.buffer, 8)
3798
3799 # Get the model type
3800 @property
3801 def fbe_type(self):
3802 return self.TYPE
3803
3804 TYPE = FinalModelAccountMessage.TYPE
3805
3806 # Check if the struct value is valid
3807 def verify(self):
3808 if (self.buffer.offset + self._model.fbe_offset) > self.buffer.size:
3809 return False
3810
3811 fbe_struct_size = self.read_uint32(self._model.fbe_offset - 8)
3812 fbe_struct_type = self.read_uint32(self._model.fbe_offset - 4)
3813 if (fbe_struct_size <= 0) or (fbe_struct_type != self.fbe_type):
3814 return False
3815
3816 return (8 + self._model.verify()) == fbe_struct_size
3817
3818 # Serialize the struct value
3819 def serialize(self, value):
3820 fbe_initial_size = self.buffer.size
3821
3822 fbe_struct_type = self.fbe_type
3823 fbe_struct_size = 8 + self._model.fbe_allocation_size(value)
3824 fbe_struct_offset = self.buffer.allocate(fbe_struct_size) - self.buffer.offset
3825 assert ((self.buffer.offset + fbe_struct_offset + fbe_struct_size) <= self.buffer.size), "Model is broken!"
3826 if (self.buffer.offset + fbe_struct_offset + fbe_struct_size) > self.buffer.size:
3827 return 0
3828
3829 fbe_struct_size = 8 + self._model.set(value)
3830 self.buffer.resize(fbe_initial_size + fbe_struct_size)
3831
3832 self.write_uint32(self._model.fbe_offset - 8, fbe_struct_size)
3833 self.write_uint32(self._model.fbe_offset - 4, fbe_struct_type)
3834
3835 return fbe_struct_size
3836
3837 # Deserialize the struct value
3838 def deserialize(self, value=None):
3839 if value is None:
3840 value = AccountMessage()
3841
3842 assert ((self.buffer.offset + self._model.fbe_offset) <= self.buffer.size), "Model is broken!"
3843 if (self.buffer.offset + self._model.fbe_offset) > self.buffer.size:
3844 return AccountMessage(), 0
3845
3846 fbe_struct_size = self.read_uint32(self._model.fbe_offset - 8)
3847 fbe_struct_type = self.read_uint32(self._model.fbe_offset - 4)
3848 assert ((fbe_struct_size > 0) and (fbe_struct_type == self.fbe_type)), "Model is broken!"
3849 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