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

Class FinalModelOrderSide

projects/Python/proto/proto.py:77–112  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

75
76# Fast Binary Encoding OrderSide final model
77class FinalModelOrderSide(fbe.FinalModel):
78 def __init__(self, buffer, offset):
79 super().__init__(buffer, offset)
80
81 # Get the allocation size
82 # noinspection PyUnusedLocal
83 def fbe_allocation_size(self, value):
84 return self.fbe_size
85
86 # Get the final size
87 @property
88 def fbe_size(self):
89 return 1
90
91 # Check if the value is valid
92 def verify(self):
93 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
94 return sys.maxsize
95
96 return self.fbe_size
97
98 # Get the value
99 def get(self):
100 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
101 return OrderSide(), 0
102
103 return OrderSide(self.read_byte(self.fbe_offset)), self.fbe_size
104
105 # Set the value
106 def set(self, value):
107 assert ((self._buffer.offset + self.fbe_offset + self.fbe_size) <= self._buffer.size), "Model is broken!"
108 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
109 return 0
110
111 self.write_byte(self.fbe_offset, value)
112 return self.fbe_size
113
114
115class OrderType(enum.IntEnum, metaclass=fbe.DefaultEnumMeta):

Callers 1

__init__Method · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected