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

Method set_begin

projects/Python/proto/protoex.py:2134–2150  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

2132
2133 # Set the struct value (begin phase)
2134 def set_begin(self):
2135 assert (self._buffer.offset + self.fbe_offset + self.fbe_size) <= self._buffer.size, "Model is broken!"
2136 if (self._buffer.offset + self.fbe_offset + self.fbe_size) > self._buffer.size:
2137 return 0
2138
2139 fbe_struct_size = self.fbe_body
2140 fbe_struct_offset = self._buffer.allocate(fbe_struct_size) - self._buffer.offset
2141 assert (fbe_struct_offset > 0) and ((self._buffer.offset + fbe_struct_offset + fbe_struct_size) <= self._buffer.size), "Model is broken!"
2142 if (fbe_struct_offset <= 0) or ((self._buffer.offset + fbe_struct_offset + fbe_struct_size) > self._buffer.size):
2143 return 0
2144
2145 self.write_uint32(self.fbe_offset, fbe_struct_offset)
2146 self.write_uint32(fbe_struct_offset, fbe_struct_size)
2147 self.write_uint32(fbe_struct_offset + 4, self.fbe_type)
2148
2149 self._buffer.shift(fbe_struct_offset)
2150 return fbe_struct_offset
2151
2152 # Set the struct value (end phase)
2153 def set_end(self, fbe_begin):

Callers 1

setMethod · 0.95

Calls 3

allocateMethod · 0.45
write_uint32Method · 0.45
shiftMethod · 0.45

Tested by

no test coverage detected