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

Class BalanceMessageFinalModel

projects/Python/proto/protoex.py:3424–3489  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3422
3423# Fast Binary Encoding BalanceMessage final model
3424class BalanceMessageFinalModel(fbe.Model):
3425 __slots__ = "_model",
3426
3427 def __init__(self, buffer=None):
3428 super().__init__(buffer)
3429 self._model = FinalModelBalanceMessage(self.buffer, 8)
3430
3431 # Get the model type
3432 @property
3433 def fbe_type(self):
3434 return self.TYPE
3435
3436 TYPE = FinalModelBalanceMessage.TYPE
3437
3438 # Check if the struct value is valid
3439 def verify(self):
3440 if (self.buffer.offset + self._model.fbe_offset) > self.buffer.size:
3441 return False
3442
3443 fbe_struct_size = self.read_uint32(self._model.fbe_offset - 8)
3444 fbe_struct_type = self.read_uint32(self._model.fbe_offset - 4)
3445 if (fbe_struct_size <= 0) or (fbe_struct_type != self.fbe_type):
3446 return False
3447
3448 return (8 + self._model.verify()) == fbe_struct_size
3449
3450 # Serialize the struct value
3451 def serialize(self, value):
3452 fbe_initial_size = self.buffer.size
3453
3454 fbe_struct_type = self.fbe_type
3455 fbe_struct_size = 8 + self._model.fbe_allocation_size(value)
3456 fbe_struct_offset = self.buffer.allocate(fbe_struct_size) - self.buffer.offset
3457 assert ((self.buffer.offset + fbe_struct_offset + fbe_struct_size) <= self.buffer.size), "Model is broken!"
3458 if (self.buffer.offset + fbe_struct_offset + fbe_struct_size) > self.buffer.size:
3459 return 0
3460
3461 fbe_struct_size = 8 + self._model.set(value)
3462 self.buffer.resize(fbe_initial_size + fbe_struct_size)
3463
3464 self.write_uint32(self._model.fbe_offset - 8, fbe_struct_size)
3465 self.write_uint32(self._model.fbe_offset - 4, fbe_struct_type)
3466
3467 return fbe_struct_size
3468
3469 # Deserialize the struct value
3470 def deserialize(self, value=None):
3471 if value is None:
3472 value = BalanceMessage()
3473
3474 assert ((self.buffer.offset + self._model.fbe_offset) <= self.buffer.size), "Model is broken!"
3475 if (self.buffer.offset + self._model.fbe_offset) > self.buffer.size:
3476 return BalanceMessage(), 0
3477
3478 fbe_struct_size = self.read_uint32(self._model.fbe_offset - 8)
3479 fbe_struct_type = self.read_uint32(self._model.fbe_offset - 4)
3480 assert ((fbe_struct_size > 0) and (fbe_struct_type == self.fbe_type)), "Model is broken!"
3481 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