summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2022-05-19Added _toval() in carc and cbox. Added dynamic polymorphism example, shape.c.Tyge Løvset
2022-05-18Formatted carc.h cbox.h: also simplified; removed _get() -> was same as ↵Tyge Løvset
_toraw(), see template.h diff.
2022-05-16Changed contructor names in carr2/carr3 to be more consistent with other ↵Tyge Løvset
containers.
2022-05-13Changed csview c_PRIsv macro. Now must be prefixed with "%", to match with ↵Tyge Løvset
PRIxYYY macros from inttypes.h. E.g. printf("%40" c_PRIsv "\n", c_ARGsv(sv)); to specify 40 character right aligned output of sv. Check your usage.
2022-05-13Added cstr_assign_s(), and changed return type to char* for cstr_assign*() ↵Tyge Løvset
and cstr_append*(), i.e. the pointer to the (possible new) string buffer.
2022-05-13Fixed bug in cstr_assign_n(). Thanks to murtazahakim for reporting.Tyge Løvset
2022-05-13constness and code formatting.Tyge Lovset
2022-05-12i_keyfrom/i_valfrom no longer used with i_key_bind/i_val_bind. Is considered ↵Tyge Løvset
optional for enabling emplace.
2022-05-12Fixed issues with i_keyfrom/i_valfromTyge Løvset
2022-05-12Reverted some back, and made c_less_cmp() safer.Tyge Løvset
2022-05-11Added robustness (hopefully).Tyge Løvset
2022-05-11Added i_less template param as alternative to i_cmp.Tyge Løvset
2022-05-11minor cleanup cmapTyge Løvset
2022-05-10Renamed (newish) functions expand_uninitialized to expand_uninit. + some ↵Tyge Lovset
minor changes.
2022-05-09Formatting only.Tyge Løvset
2022-05-09Small improvement in c_default_hash()Tyge Løvset
2022-05-07Updated alt/csmap.h to be synced with current csmap.h; alt-version allocates ↵Tyge Løvset
each node separately on the heap, regular uses an array. Now alt-version of csmap and cstr can be used by defining -DSTC_CSMAP_V1 and -DSTC_CSTR_V1 when compiling. Improved code readability by making line breaks after if and while (also cmap.h). Note, the alt-versions may be removed in the future, but the alt csmap.h may be made into an intrusive sorted map, where the creation and destruction of nodes must be done by the user.
2022-05-06Changed find_if() again. Now 3 iterator variants only.Tyge Løvset
2022-05-06Internal: made c_sv(lit) available after include ccommon.h and forward.hTyge Lovset
2022-05-06Made cstr_buffer() func. public, and docs for cstr_sv() - convert to csview.Tyge Lovset
2022-05-05Swapped two arguments in c_find_if/c_find_it. Changed c_container_of().Tyge Løvset
2022-05-05Added type-checked c_container_of() macro using typeof (C23, gcc, clang, ↵Tyge Løvset
tcc). c_unchecked_container_of() must be used by lib.
2022-05-04Update README.mdTyge Løvset
2022-05-04Small change in find_if/it macro + doc of index variable.Tyge Løvset
2022-05-04Missing includes because of change in cregex.hTyge Løvset
2022-05-04Added c_find_if, c_find_it macros: linear search in containers. Removed ↵Tyge Løvset
c_apply_cnt macro.
2022-05-03Minor adjustments to previous commit.Tyge Løvset
2022-05-03Added push front/back of existing nodes.Tyge Løvset
2022-05-02Merge branch 'master' of github.com:tylov/STCTyge Løvset
2022-05-02Fix linkage issue with clist_X_count().Tyge Løvset
2022-05-02Fixed undefined behaviour (but working) code in carc.Tyge Løvset
2022-05-02Some more fix in README.mdTyge Løvset
2022-05-02More doc fixes on i_keyclone, i_keyfrom and i_valclone, i_valfromTyge Løvset
2022-05-02A few more docs bugs fixed.Tyge Løvset
2022-05-01More changes to intro text.Tyge Løvset
2022-05-01Update README.mdTyge Løvset
2022-05-01Rewrote introduction section.Tyge Løvset
2022-05-01- Array expansions (insert, reserve, clone) are now checked for malloc ↵Tyge Lovset
nomem, and result can be checked by user in cvec, cdeq, cmap, csmap (cvec/cdeq insert functions now returns pointer, not iter). - Refactoring.
2022-04-29cmap/csmap cleanup incl. docs.Tyge Løvset
2022-04-28Update carc_api.mdTyge Løvset
2022-04-28_i_implement moved to user-level template parameter as i_implement. Removed ↵Tyge Løvset
i_opt flag c_implement. Removed OLD include/alt/clist.h
2022-04-28Finalized template.h logic.Tyge Løvset
2022-04-27Docs only update for carc/cbox.Tyge Løvset
2022-04-27Final fixes to carc and cbox; Reverted constructor name to make; (similarity ↵Tyge Løvset
to make_shared/make_unique in c++).
2022-04-27Updated examples.Tyge Løvset
2022-04-27Removed cbox_X_make() and carc_X_make() when i_rawval was not defined, i.e. ↵Tyge Løvset
like emplace is removed in other containers.
2022-04-27Bugfix: cbox didn't use i_keyclone, and therefore did not deep clone properly.Tyge Løvset
2022-04-27Added cstr_expand_uninitialized().Tyge Løvset
2022-04-27Simplifications possible due to previous commit.Tyge Løvset
2022-04-27Finally FIXED cloning/to/from scheme to work properly. When using ↵Tyge Løvset
i_key_bind/i_val_bind, a .._clone() function *must* always be defined. Functions .._from and .._toraw is only required when i_keyraw/i_valraw type is defined.