summaryrefslogtreecommitdiffhomepage
path: root/include/stc/cbox.h
AgeCommit message (Collapse)Author
2023-04-05Internal: renamed untemplate.h to template2.hTyge Løvset
2023-04-03Split priv/template.h in two files to make mksingle.sh work.Tyge Løvset
2023-03-31Added stc/extend.h: A generalized way to type-safely extend a container with ↵Tyge Lovset
new members which can be accessed from the template parameters. See examples/functor.c
2023-02-20Added c_eraseremove_if() for cvec, cdeq, cstack, cqueue in ccommon.h. Some ↵Tyge Løvset
cleanup.
2023-02-18Fixed carc, cbox: no need for no_lookup and no_eq: use only no_cmp, no_hash ↵Tyge Løvset
if needed.
2023-02-08Changed to use lowercase flow-control macros in examples (uppercase will ↵Tyge Løvset
still be supported). Improved many examples to use c_make() to init containers.
2023-02-07Added custom allocator per container type.Tyge Løvset
2023-01-31Reverted c_MALLOC, c_CALLOC, c_REALLOC and c_FREE to lowercase.Tyge Løvset
2023-01-27(Reverted) c_COMPOUND() to c_LITERAL().Tyge Løvset
2023-01-19Finish last commit. Most safe function macros are now preferred lowercase, ↵Tyge Løvset
whereas flow control macros (c_FOREACH, ..) are preferred uppercase.
2023-01-05Added parenthesis around user macro argumentsTyge Løvset
2023-01-04Bump to 2023Tyge Løvset
2022-12-31Internally renamed ccommon.h macros to uppercase. Lowercase macros are still ↵Tyge Løvset
supported via include/stc/priv/lowcase.h.
2022-12-30Fixed carc and cbox docs. Added cbox_X_assign() : transfer ownership between ↵Tyge Løvset
cboxes.
2022-12-29Restructuring of some headers into include/algo folder. Some API changes ↵Tyge Løvset
*_replace*() functions have been renamed, and a few minor API changes.
2022-12-20Restructured folders: examples, benchmarks, tests into misc folder.Tyge Lovset
2022-12-19Renames:Tyge Løvset
cstr_null => cstr_NULL csview_null => csview_NULL cstr_npos => c_NPOS csview_npos => c_NPOS c_ARGsv(sv) => c_ARGSV(sv) c_init(x) => c_INIT(x)
2022-11-15More internal cleanup and fixes for cbox and carc.Tyge Løvset
2022-11-14Internal update.Tyge Løvset
2022-11-13Reverted forward declaration from c_declare_X back to c_forward_X, and the ↵Tyge Løvset
flag "i_opt c_declared" to "i_opt c_is_forward". Sorry about this, but hopefully not a widely used feature for most yet.
2022-11-03Renamed forward_CONTAINER(...) => declare_CONTAINER(...),Tyge Løvset
and c_is_fwd => c_declared, for the i_opt option define.
2022-10-29Small adjustments in template.hTyge Løvset
2022-10-28Renamed semi-internal macro (used for c++ compability) c_make => c_init.Tyge Løvset
2022-10-25More and hopefully final fixes of cbox/carc.Tyge Løvset
API change: _from = _make, _new => _from
2022-10-24Fix in cbox/carc.Tyge Løvset
2022-10-24API CHANGE: Renamed input params for naming consisteny and usage:Tyge Løvset
i_key_class TYPE => i_keyclass TYPE i_val_class TYPE => i_valclass TYPE i_key_arcbox TYPE => i_keyboxed TYPE i_val_arcbox TYPE => i_valboxed TYPE i_key_bind, i_val_bind are removed.
2022-10-24Generalized i_key_class and i_key_arcbox scheme.Tyge Løvset
2022-10-21Fixed wrong formatting of 64bit values various places.Tyge Løvset
Finialized cbox/carc issues.
2022-10-20Reverted some of the changes, but works now well.Tyge Løvset
2022-10-20Fixed previous commit, and city.c example.Tyge Løvset
2022-10-20Fixed some inconsistencies, and a minor bug in cmap.Tyge Løvset
2022-10-20Switch from #define i_val_bind to i_val_class and i_key_class.Tyge Løvset
i_val_bind/i_key_bind is deprecated but available for now.
2022-10-19- Removed deprecated carc_make and cbox_make (replaced by carc_from, cbox_from)Tyge Løvset
- Some improvements to template.h - Many smaller improvements to examples and docs.
2022-09-02Change: carc and cbox defaults to pointer comparison when none of i_cmp, ↵Tyge Løvset
i_less or i_eq is specified. This removes annoying requirement.
2022-08-12More misc changes carc/cbox, cdeq/cvec.Tyge Lovset
2022-08-11Added cmp, eq, hash to carc/cbox.Tyge Lovset
2022-08-11Fixed issue with cbox / carc. Minor update some examples.Tyge Løvset
2022-07-06Version 3.7. Make sure to check NEWS/Changes in README.md for a few ↵Tyge Løvset
code-breaking API changes.
2022-06-01Converted all files with DOS line endings to LINUX.Tyge Løvset
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-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-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-25Removed size argument to `i_hash` template parameter and `c_default_hash`. ↵Tyge Løvset
This was a "design error", and is not worth keeping for backward compability. Please update your code where you use i_hash template parameter (simply remove second argument).
2022-04-23Integrated (and removed) c_hash32 and c_hash64 into c_default_hash, which is ↵Tyge Løvset
improved. Added i_key_ssv and i_val_ssv (cstr with csview as raw-type).
2022-04-21Switched to use i_key as primary template type parameter for all containers. ↵Tyge Løvset
Only maps will actually use i_val. Users can still specify i_val for non-maps, so there are no usability changes, other than the option to use i_key always, which makes the implementation and switching between container types simpler.
2022-04-20Final carc / cbox cleanup.Tyge Løvset
2022-04-20Some cleanup after carc / cbox updates.Tyge Løvset