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

Method verify

projects/Python/proto/test.py:1517–1536  ·  view source on GitHub ↗
(self, fbe_verify_type=True)

Source from the content-addressed store, hash-verified

1515
1516 # Check if the struct value is valid
1517 def verify(self, fbe_verify_type=True):
1518 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
1519 return True
1520
1521 fbe_struct_offset = self.read_uint32(self.fbe_offset)
1522 if (fbe_struct_offset == 0) or ((self._buffer.offset + fbe_struct_offset + 4 + 4) > self._buffer.size):
1523 return False
1524
1525 fbe_struct_size = self.read_uint32(fbe_struct_offset)
1526 if fbe_struct_size < (4 + 4):
1527 return False
1528
1529 fbe_struct_type = self.read_uint32(fbe_struct_offset + 4)
1530 if fbe_verify_type and (fbe_struct_type != self.fbe_type):
1531 return False
1532
1533 self._buffer.shift(fbe_struct_offset)
1534 fbe_result = self.verify_fields(fbe_struct_size)
1535 self._buffer.unshift(fbe_struct_offset)
1536 return fbe_result
1537
1538 # Check if the struct fields are valid
1539 def verify_fields(self, fbe_struct_size):

Callers

nothing calls this directly

Calls 4

verify_fieldsMethod · 0.95
read_uint32Method · 0.45
shiftMethod · 0.45
unshiftMethod · 0.45

Tested by

no test coverage detected