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

Method set

projects/Python/proto/fbe.py:1072–1089  ·  view source on GitHub ↗
(self, value)

Source from the content-addressed store, hash-verified

1070
1071 # Set the bytes value
1072 def set(self, value):
1073 assert (value is not None), "Invalid bytes value!"
1074 if value is None:
1075 raise ValueError("Invalid bytes value!")
1076
1077 assert ((self._buffer.offset + self.fbe_offset + self.fbe_size) <= self._buffer.size), "Model is broken!"
1078 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
1079 return
1080
1081 fbe_bytes_size = len(value)
1082 fbe_bytes_offset = self._buffer.allocate(4 + fbe_bytes_size) - self._buffer.offset
1083 assert ((fbe_bytes_offset > 0) and ((self._buffer.offset + fbe_bytes_offset + 4 + fbe_bytes_size) <= self._buffer.size)), "Model is broken!"
1084 if (fbe_bytes_offset <= 0) or ((self._buffer.offset + fbe_bytes_offset + 4 + fbe_bytes_size) > self._buffer.size):
1085 return
1086
1087 self.write_uint32(self.fbe_offset, fbe_bytes_offset)
1088 self.write_uint32(fbe_bytes_offset, fbe_bytes_size)
1089 self.write_bytes(fbe_bytes_offset + 4, value)
1090
1091
1092# Fast Binary Encoding string field model

Callers

nothing calls this directly

Calls 3

allocateMethod · 0.45
write_uint32Method · 0.45
write_bytesMethod · 0.45

Tested by

no test coverage detected