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

Class FinalModelOrderType

projects/Python/proto/proto.py:176–211  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

174
175# Fast Binary Encoding OrderType final model
176class FinalModelOrderType(fbe.FinalModel):
177 def __init__(self, buffer, offset):
178 super().__init__(buffer, offset)
179
180 # Get the allocation size
181 # noinspection PyUnusedLocal
182 def fbe_allocation_size(self, value):
183 return self.fbe_size
184
185 # Get the final size
186 @property
187 def fbe_size(self):
188 return 1
189
190 # Check if the value is valid
191 def verify(self):
192 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
193 return sys.maxsize
194
195 return self.fbe_size
196
197 # Get the value
198 def get(self):
199 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
200 return OrderType(), 0
201
202 return OrderType(self.read_byte(self.fbe_offset)), self.fbe_size
203
204 # Set the value
205 def set(self, value):
206 assert ((self._buffer.offset + self.fbe_offset + self.fbe_size) <= self._buffer.size), "Model is broken!"
207 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
208 return 0
209
210 self.write_byte(self.fbe_offset, value)
211 return self.fbe_size
212
213
214class State(enum.IntFlag, metaclass=fbe.DefaultEnumMeta):

Callers 1

__init__Method · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected