int main(void) { unsigned char *zm; zm = zipmapNew(); zm = zipmapSet(zm,(unsigned char*) "name",4, (unsigned char*) "foo",3,NULL); zm = zipmapSet(zm,(unsigned char*) "surname",7, (unsigned char*) "foo",3,NULL); zm = zipmapSet(zm,(unsigned char*) "age",3, (unsigned char*) "foo",3,NULL); zipmapRepr(zm); zm = zipmapSet(zm,(unsigned char*) "hello",5, (unsigned char*) "world!",6,NULL); zm = zipmapSet(zm,(unsigned char*) "foo",3, (unsigned char*) "bar",3,NULL); zm = zipmapSet(zm,(unsigned char*) "foo",3, (unsigned char*) "!",1,NULL); zipmapRepr(zm); zm = zipmapSet(zm,(unsigned char*) "foo",3, (unsigned char*) "12345",5,NULL); zipmapRepr(zm); zm = zipmapSet(zm,(unsigned char*) "new",3, (unsigned char*) "xx",2,NULL); zm = zipmapSet(zm,(unsigned char*) "noval",5, (unsigned char*) "",0,NULL); zipmapRepr(zm); zm = zipmapDel(zm,(unsigned char*) "new",3,NULL); zipmapRepr(zm); printf("\nLook up large key:\n"); { unsigned char buf[512]; unsigned char *value; unsigned int vlen, i; for (i = 0; i < 512; i++) buf[i] = 'a'; zm = zipmapSet(zm,buf,512,(unsigned char*) "long",4,NULL); if (zipmapGet(zm,buf,512,&value,&vlen)) { printf(" <long key> is associated to the %d bytes value: %.*s\n", vlen, vlen, value); } } printf("\nPerform a direct lookup:\n"); { unsigned char *value; unsigned int vlen; if (zipmapGet(zm,(unsigned char*) "foo",3,&value,&vlen)) { printf(" foo is associated to the %d bytes value: %.*s\n", vlen, vlen, value); } } printf("\nIterate trought elements:\n"); { unsigned char *i = zipmapRewind(zm); unsigned char *key, *value; unsigned int klen, vlen; unsigned int timestamp; while((i = zipmapXNext(i,&key,&klen,&value,&vlen,×tamp)) != NULL) { printf(" %d:%.*s => %d:%.*s\n", klen, klen, key, vlen, vlen, value); } } return 0; }
int main(void) { unsigned char *zm; zm = zipmapNew(); zm = zipmapSet(zm,(unsigned char*) "hello",5, (unsigned char*) "world!",6); zm = zipmapSet(zm,(unsigned char*) "foo",3, (unsigned char*) "bar",3); zm = zipmapSet(zm,(unsigned char*) "foo",3, (unsigned char*) "!",1); zipmapRepr(zm); zm = zipmapSet(zm,(unsigned char*) "foo",3, (unsigned char*) "12345",5); zipmapRepr(zm); zm = zipmapSet(zm,(unsigned char*) "new",3, (unsigned char*) "xx",2); zipmapRepr(zm); zm = zipmapDel(zm,(unsigned char*) "new",3,NULL); zipmapRepr(zm); return 0; }