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

Class FieldModelEnumSimple

projects/Python/proto/test.py:61–86  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

59
60# Fast Binary Encoding EnumSimple field model
61class FieldModelEnumSimple(fbe.FieldModel):
62 def __init__(self, buffer, offset):
63 super().__init__(buffer, offset)
64
65 # Get the field size
66 @property
67 def fbe_size(self):
68 return 4
69
70 # Get the value
71 def get(self, defaults=None):
72 if defaults is None:
73 defaults = EnumSimple()
74
75 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
76 return defaults
77
78 return EnumSimple(self.read_int32(self.fbe_offset))
79
80 # Set the value
81 def set(self, value):
82 assert ((self._buffer.offset + self.fbe_offset + self.fbe_size) <= self._buffer.size), "Model is broken!"
83 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
84 return
85
86 self.write_int32(self.fbe_offset, value)
87
88
89# Fast Binary Encoding EnumSimple final model

Callers 7

__init__Method · 0.70
__init__Method · 0.70
__init__Method · 0.70
__init__Method · 0.70
__init__Method · 0.70
__init__Method · 0.70
__init__Method · 0.70

Calls

no outgoing calls

Tested by 7

__init__Method · 0.56
__init__Method · 0.56
__init__Method · 0.56
__init__Method · 0.56
__init__Method · 0.56
__init__Method · 0.56
__init__Method · 0.56