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

Class FieldModelFlagsTyped

projects/Python/proto/test.py:589–614  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

587
588# Fast Binary Encoding FlagsTyped field model
589class FieldModelFlagsTyped(fbe.FieldModel):
590 def __init__(self, buffer, offset):
591 super().__init__(buffer, offset)
592
593 # Get the field size
594 @property
595 def fbe_size(self):
596 return 8
597
598 # Get the value
599 def get(self, defaults=None):
600 if defaults is None:
601 defaults = FlagsTyped()
602
603 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
604 return defaults
605
606 return FlagsTyped(self.read_uint64(self.fbe_offset))
607
608 # Set the value
609 def set(self, value):
610 assert ((self._buffer.offset + self.fbe_offset + self.fbe_size) <= self._buffer.size), "Model is broken!"
611 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
612 return
613
614 self.write_uint64(self.fbe_offset, value)
615
616
617# Fast Binary Encoding FlagsTyped final model

Callers 1

__init__Method · 0.70

Calls

no outgoing calls

Tested by 1

__init__Method · 0.56