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

Method verify

projects/Python/proto/fbe.py:1761–1784  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1759
1760 # Check if the map is valid
1761 def verify(self):
1762 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
1763 return True
1764
1765 fbe_map_offset = self.read_uint32(self.fbe_offset)
1766 if fbe_map_offset == 0:
1767 return True
1768
1769 if (self._buffer.offset + fbe_map_offset + 4) > self._buffer.size:
1770 return False
1771
1772 fbe_map_size = self.read_uint32(fbe_map_offset)
1773
1774 self._model_key.fbe_offset = fbe_map_offset + 4
1775 self._model_value.fbe_offset = fbe_map_offset + 4 + self._model_key.fbe_size
1776 for i in range(fbe_map_size):
1777 if not self._model_key.verify():
1778 return False
1779 self._model_key.fbe_shift(self._model_key.fbe_size + self._model_value.fbe_size)
1780 if not self._model_value.verify():
1781 return False
1782 self._model_value.fbe_shift(self._model_key.fbe_size + self._model_value.fbe_size)
1783
1784 return True
1785
1786 # Get the map
1787 def get(self, values=None):

Callers

nothing calls this directly

Calls 3

read_uint32Method · 0.45
verifyMethod · 0.45
fbe_shiftMethod · 0.45

Tested by

no test coverage detected