22 return buf->buf[start+ix];
39 len =
end == 0 ? slc.
buf->len - slc.start - start :
end - start;
40 assert(end <= slc.buf->
len - slc.start);
dynamically allocated, but fixed-size buffer template
Definition buffer.h:18
size_t len
number of items stored in buffer
Definition buffer.h:21
slice of existing Buffer.
Definition slice.h:12
size_t len
number of items in slice
Definition slice.h:16
~Slice()
destructor
Definition slice.h:30
T * begin() const
begin method for range-based for loops
Definition slice.h:25
const Buffer< T > * buf
pointer to owning Buffer
Definition slice.h:14
T * end() const
end method for range-based for loops
Definition slice.h:27
T & operator[](size_t ix) const
access into known size of buffer
Definition slice.h:20