MCPcopy Create free account
hub / github.com/Santroller/Santroller / ring_buffer_push_core

Function ring_buffer_push_core

lib/ring_buffer/ring_buffer.c:55–67  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

53}
54
55static RING_BUFFER_SIZE_TYPE ring_buffer_push_core(ring_buffer_t *ring_buf, const char *vals, RING_BUFFER_SIZE_TYPE nvals)
56{
57 assert(ring_buf);
58 assert(vals);
59 RING_BUFFER_SIZE_TYPE npushed = 0;
60 for (RING_BUFFER_SIZE_TYPE idx = 0; ring_buf->num_buffered < ring_buf->bufsize && idx < nvals; idx++) {
61 ring_buf->buf[ring_buf->in_idx] = vals[idx];
62 ring_buf->in_idx = ((ring_buf->in_idx+1) % ring_buf->bufsize);
63 ++ring_buf->num_buffered;
64 ++npushed;
65 }
66 return npushed;
67}
68
69RING_BUFFER_SIZE_TYPE ring_buffer_push_unsafe(ring_buffer_t *ring_buf, const char *vals, RING_BUFFER_SIZE_TYPE nvals)
70{

Callers 2

ring_buffer_push_unsafeFunction · 0.85
ring_buffer_pushFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected