Exemple #1
0
gap_buffer_t *gap_buffer_create_from_str(const u8 *str, size_t numelts, size_t elemsize)
{
    gap_buffer_t *this = gap_buffer_create(elemsize);
    for(int i = 0; i < numelts; i++) {
        gap_buffer_insert(this, i, ((u8 *)str) + i*elemsize);
    }

    return this;
}
Exemple #2
0
int main (){
  int a=0, b=1, c=2, d=3, e=4, f=5;
  gap_buffer g = create_gap_buffer ();
  
  gap_buffer_insert(g, &a, 0); printf("inserting 0 pos 0\n");
  gap_buffer_dump(g);

  gap_buffer_insert(g, &b, 1); printf("inserting 1 pos 1\n");
  gap_buffer_dump(g);

  gap_buffer_insert(g, &c, 2); printf("inserting 2 pos 2\n");
  gap_buffer_dump(g);

  gap_buffer_insert(g, &d, 1); printf("inserting 3 pos 1\n");
  gap_buffer_dump(g);

  gap_buffer_insert(g, &e, 0); printf("inserting 4 pos 0\n");
  gap_buffer_dump(g);

  gap_buffer_insert(g, &f, 2); printf("inserting 5 pos 2\n");
  gap_buffer_dump(g);
  
  destroy_gap_buffer(g);
  return 0;
}
Exemple #3
0
hale_internal inline void
_buffer_insert(GapBuffer *buffer, memi offset, ch *text, memi size) {
    gap_buffer_insert(buffer, offset, text, size);
}