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

Method set_begin

proto/simple_models.cpp:141–159  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

139}
140
141size_t FieldModel<::simple::SimpleRequest>::set_begin()
142{
143 assert(((_buffer.offset() + fbe_offset() + fbe_size()) <= _buffer.size()) && "Model is broken!");
144 if ((_buffer.offset() + fbe_offset() + fbe_size()) > _buffer.size())
145 return 0;
146
147 uint32_t fbe_struct_size = (uint32_t)fbe_body();
148 uint32_t fbe_struct_offset = (uint32_t)(_buffer.allocate(fbe_struct_size) - _buffer.offset());
149 assert(((fbe_struct_offset > 0) && ((_buffer.offset() + fbe_struct_offset + fbe_struct_size) <= _buffer.size())) && "Model is broken!");
150 if ((fbe_struct_offset == 0) || ((_buffer.offset() + fbe_struct_offset + fbe_struct_size) > _buffer.size()))
151 return 0;
152
153 *((uint32_t*)(_buffer.data() + _buffer.offset() + fbe_offset())) = fbe_struct_offset;
154 *((uint32_t*)(_buffer.data() + _buffer.offset() + fbe_struct_offset)) = fbe_struct_size;
155 *((uint32_t*)(_buffer.data() + _buffer.offset() + fbe_struct_offset + 4)) = (uint32_t)fbe_type();
156
157 _buffer.shift(fbe_struct_offset);
158 return fbe_struct_offset;
159}
160
161void FieldModel<::simple::SimpleRequest>::set_end(size_t fbe_begin)
162{

Callers

nothing calls this directly

Calls 5

offsetMethod · 0.45
sizeMethod · 0.45
allocateMethod · 0.45
dataMethod · 0.45
shiftMethod · 0.45

Tested by

no test coverage detected