From 9a68fcf0bfa1d0d0bc47c709cb094953b5cb3bff Mon Sep 17 00:00:00 2001 From: Tyge Løvset <60263450+tylov@users.noreply.github.com> Date: Thu, 1 Oct 2020 22:20:55 +0200 Subject: Update README.md --- README.md | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 377659a4..4f2c0161 100644 --- a/README.md +++ b/README.md @@ -37,16 +37,22 @@ int main(void) { cvec_i_del(&vec); } ``` -It is easy to have more complex container element types: +Using containers with complex element types is simple: ```C #include #include -typedef struct { cstr_t name; int id; } User; -void User_del(User* u) {cstr_del(&u->name);} -int User_cmp(User* u, User* v) {int c = strcmp(u->name.str, v->name.str); return c != 0 ? c : u->id - v->id;} +typedef struct { + cstr_t name; // dynamic string + int id; +} User; -using_cvec(u, User, User_del, User_cmp); +void User_del(User* u) + { cstr_del(&u->name); } +int User_compare(User* u, User* v) + { int c = strcmp(u->name.str, v->name.str); return c != 0 ? c : u->id - v->id; } + +using_cvec(u, User, User_del, User_compare); int main(void) { cvec_u vec = cvec_u_init(); -- cgit v1.2.3