示例#1
0
object grow_buffer(object old, long new_capacity) {
    long old_capacity = BUFFER_CAPACITY(old);
    long old_length = BUFFER_LENGTH(old);
    if (old_capacity >= new_capacity) return old;
    gc_tmp1 = old;
    gc_tmp2 = make_buffer(new_capacity);
    memcpy(BUFFER_DATA(gc_tmp2),BUFFER_DATA(gc_tmp1),old_length);
    BUFFER_LENGTH(gc_tmp2) = BUFFER_LENGTH(old);
    return gc_tmp2;
}
示例#2
0
文件: buffer.c 项目: jaz303/buffer.c
size_t buffer_capacity(buffer_t *buffer) { return BUFFER_CAPACITY(buffer); }