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

Method deserialize

projects/Python/proto/test.py:12858–12873  ·  view source on GitHub ↗
(self, value=None)

Source from the content-addressed store, hash-verified

12856
12857 # Deserialize the struct value
12858 def deserialize(self, value=None):
12859 if value is None:
12860 value = StructSet()
12861
12862 assert ((self.buffer.offset + self._model.fbe_offset) <= self.buffer.size), "Model is broken!"
12863 if (self.buffer.offset + self._model.fbe_offset) > self.buffer.size:
12864 return StructSet(), 0
12865
12866 fbe_struct_size = self.read_uint32(self._model.fbe_offset - 8)
12867 fbe_struct_type = self.read_uint32(self._model.fbe_offset - 4)
12868 assert ((fbe_struct_size > 0) and (fbe_struct_type == self.fbe_type)), "Model is broken!"
12869 if (fbe_struct_size <= 0) or (fbe_struct_type != self.fbe_type):
12870 return StructSet(), 8
12871
12872 fbe_result = self._model.get(value)
12873 return fbe_result[0], (8 + fbe_result[1])
12874
12875 # Move to the next struct value
12876 def next(self, prev):

Calls 3

StructSetClass · 0.70
read_uint32Method · 0.45
getMethod · 0.45

Tested by

no test coverage detected