MCPcopy Create free account
hub / github.com/Moddable-OpenSource/moddable / PiuTextBufferAppend

Function PiuTextBufferAppend

modules/piu/All/piuText.c:189–207  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

187#define NODE(_OFFSET) ((void*)((uint8_t*)(*nodeBuffer) + _OFFSET))
188
189void PiuTextBufferAppend(xsMachine *the, PiuTextBuffer* buffer, void* data, size_t size)
190{
191 size_t available = (*buffer)->available;
192 size_t former = (*buffer)->current;
193 size_t current = former + size;
194 if (current > available) {
195 void* chunk;
196 available += size;
197 chunk = fxRenewChunk(the, *buffer, (xsIntegerValue)available);
198 if (!chunk) {
199 chunk = fxNewChunk(the, (xsIntegerValue)available);
200 c_memcpy(chunk, *buffer, former);
201 *buffer = chunk;
202 }
203 (*buffer)->available = available;
204 }
205 c_memcpy(((uint8_t*)(*buffer)) + former, data, size);
206 (*buffer)->current = current;
207}
208
209void PiuTextBufferClear(xsMachine* the, PiuTextBuffer* buffer)
210{

Callers 4

PiuCodeParserColorAtFunction · 0.85
PiuCodeParserFillFunction · 0.85
PiuCodeParserReturnFunction · 0.85
PiuCodeParserTabFunction · 0.85

Calls 2

fxRenewChunkFunction · 0.85
fxNewChunkFunction · 0.85

Tested by

no test coverage detected