Beispiel #1
0
int main() {
  int i;
  UT_string *t;
  UT_vector v; utvector_init(&v, utstring_mm);
  UT_string s; utstring_init(&s);

  for(i=0; i<16; i++) {
    utstring_printf(&s, ".");
    utvector_push(&v, &s);
  }
  dump(&v);

  t = (UT_string*)utvector_head(&v);
  printf("head: %s %s\n", t?"non-null":"null", t?utstring_body(t):"-");

  t = (UT_string*)utvector_tail(&v);
  printf("tail: %s %s\n", t?"non-null":"null", t?utstring_body(t):"-");

  for(i=0; i<16; i++) {
    printf("shift\n");
    utvector_shift(&v);
    t = (UT_string*)utvector_head(&v);
    printf("len: %d, head: %s %s\n", utvector_len(&v), t?"non-null":"null", t?utstring_body(t):"-");
  }

  printf("extend\n");
  t= (UT_string*)utvector_extend(&v);
  utstring_printf(t,"extended");
  t = (UT_string*)utvector_head(&v);
  printf("len: %d, head: %s %s\n", utvector_len(&v), t?"non-null":"null", t?utstring_body(t):"-");

  utvector_fini(&v);
  utstring_done(&s);
  return 0;
}
Beispiel #2
0
int main() {
  int i;
  UT_string *t;
  UT_vector v; utvector_init(&v, utvector_utstring);
  UT_string s; utstring_init(&s);

  for(i=0; i<16; i++) {
    utstring_printf(&s, ".");
    utvector_push(&v, &s);
  }
  dump(&v);

  t = (UT_string*)utvector_head(&v);
  printf("head: %s %s\n", t?"non-null":"null", t?utstring_body(t):"-");

  t = (UT_string*)utvector_tail(&v);
  printf("tail: %s %s\n", t?"non-null":"null", t?utstring_body(t):"-");

  printf("extend\n");
  t = (UT_string*)utvector_extend(&v);
  utstring_bincpy(t, "hello", 5);
  dump(&v);

  t = (UT_string*)utvector_head(&v);
  printf("head: %s %s\n", t?"non-null":"null", t?utstring_body(t):"-");

  t = (UT_string*)utvector_tail(&v);
  printf("tail: %s %s\n", t?"non-null":"null", t?utstring_body(t):"-");

  utvector_fini(&v);
  utstring_done(&s);
  return 0;
}
Beispiel #3
0
struct qk *qk_new(void) {
  struct qk *qk = malloc(sizeof(*qk));
  if (qk == NULL) goto done;
  memset(qk,0,sizeof(*qk));
  utvector_init(&qk->keys, &utvector_utstring_mm);
  utstring_init(&qk->tmp);
 done:
  return qk;
}
Beispiel #4
0
int main() {
  int i; UT_string *p;
  UT_vector v; utvector_init(&v, utvector_utstring);
  UT_string s; utstring_init(&s);
  for(i=0; i<10; i++) {
    utstring_printf(&s, ".");
    utvector_push(&v, &s);
  }
  p=NULL;
  while ( (p=(UT_string*)utvector_next(&v,p))) printf("%s\n",utstring_body(p));

  utvector_fini(&v);
  utstring_done(&s);
  return 0;
}
Beispiel #5
0
int main() {
  int i,*p=NULL;
  UT_vector v;
  utvector_init(&v, utmm_int);
  for(i=0; i<16; i++) utvector_push(&v, &i);

  p=NULL; while ( (p=(int*)utvector_next(&v,p))) printf("%d\n",*p);


  p = (int*)utvector_head(&v);
  printf("head: (%s) %d\n", p?"non-null":"null", p?*p:0);

  p = (int*)utvector_tail(&v);
  printf("tail: (%s) %d\n", p?"non-null":"null", p?*p:0);

  utvector_fini(&v);
  return 0;
}
Beispiel #6
0
int main() {
  int i; 
  UT_vector v; utvector_init(&v, utvector_utstring);
  UT_vector *k;

  UT_string s; utstring_init(&s);
  for(i=0; i<10; i++) {
    utstring_printf(&s, ".");
    utvector_push(&v, &s);
  }
  dump(&v);

  printf("clone\n");
  k = utvector_clone(&v);
  dump(k);

  utvector_fini(&v);
  utvector_free(k);
  utstring_done(&s);
  return 0;
}
Beispiel #7
0
int main() {
  int i; 
  UT_string *t; 
  UT_vector v; utvector_init(&v, utvector_utstring);
  UT_string s; utstring_init(&s);

  for(i=0; i<16; i++) {
    utstring_printf(&s, ".");
    utvector_push(&v, &s);
  }
  dump(&v);

  printf("extend\n");
  t = (UT_string*)utvector_extend(&v);
  utstring_bincpy(t, "hello", 5);
  dump(&v);

  utvector_fini(&v);
  utstring_done(&s);
  return 0;
}
Beispiel #8
0
int main() {
  UT_vector v;
  utvector_init(&v, utvector_int);
  utvector_fini(&v);
  return 0;
}
Beispiel #9
0
UT_vector *utvector_new(const UT_vector_mm *mm) {
  UT_vector *v = malloc(sizeof(UT_vector)); if (!v) return NULL;
  utvector_init(v,mm);
  return v;
}