summaryrefslogtreecommitdiffhomepage
path: root/docs/cbox_api.md
AgeCommit message (Collapse)Author
2023-08-11Finalized converting to i_use_cmp (vs i_no_cmp)tylov
2023-08-10Update template.h - also renamed i_cmp_native => i_use_cmpTyge Løvset
2023-07-18Renamed i_native_cmp => i_cmp_nativetylov
Added c_all_of(), c_any_of(), c_none_of() to algo/filter.h
2023-07-15Improved warning, and other enhancements in ccommon.htylov
2023-07-12Changed docs and examples to use i_key* template parameters instead of ↵tylov
i_val* for all non-maps. Renamed c_ASSERT() to c_assert() and added optional message parameter to c_static_assert().
2023-06-11Added priv/linkage.h and renamed priv/template2.h => priv/template_undef.h.Tyge Løvset
Make all examples c++ compatible, except those using cspan.h Removed: crange_obj() Renamed: crange_make() => crange_init() Renamed: cspan_make() => cspan_init() Renamed: cstr_NULL => cstr_null Renamed: csview_NULL => csview_null
2023-05-20Rename c_make() macro to c_init(). c_make still available, but deprecated.Tyge Løvset
2023-03-26development branch for 4.2Tyge Løvset
Removed uses of c_auto and c_with in documentation examples and code examples. Still using c_defer a few places. Renamed c11/fmt.h to c11/print.h. Some additions in ccommon.h, e.g. c_const_cast(T, x). Improved docs.
2023-02-20Added c_eraseremove_if() for cvec, cdeq, cstack, cqueue in ccommon.h. Some ↵Tyge Løvset
cleanup.
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-01Update docs formatting and README.mdTyge Løvset
2022-12-30Fixed carc and cbox docs. Added cbox_X_assign() : transfer ownership between ↵Tyge Løvset
cboxes.
2022-12-23Experimental uppercase macros.Tyge Løvset
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-06Improved documentation of template parameters for all containers.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-09-23Deprecated c_forarray, c_forarray_p macros - both replaced by c_forlist, and ↵Tyge Løvset
is consistent with other c_for* macros.
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-11Update cbox/carc docs.Tyge Lovset
2022-08-11Fixed issue with cbox / carc. Minor update some examples.Tyge Løvset
2022-08-06c_apply() deprecated: replaced with c_forarray() macro. Updated and improved ↵Tyge Løvset
README.md docs.
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-05-22Changed c_apply(v, ..) macro to make it more consistent with c_apply_arr(v, ↵Tyge Løvset
..) and c_foreach (i, ..): v changed to a pointer - not value. Note: also c_pair(v) is changed correspondingly, so usage with c_apply(v) is unchanged.
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-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-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-20Final carc / cbox cleanup.Tyge Løvset
2022-04-20Some cleanup after carc / cbox updates.Tyge Løvset
2022-04-20Fix cbox.h docs example.Tyge Lovset
2022-04-19Renamed cbox_new/carc_new to cbox_make/carc_make. Disabled container emplace ↵Tyge Lovset
on arcbox elements.
2022-04-18Removed i_drop and i_from template specifiers to reduce redundancies and add ↵Tyge Lovset
clarity (error given if used): use i_valdrop/i_valfrom and i_keydrop/i_keyfrom instead. Added missing at_mut() function to cdeq.
2022-03-16Bugfix: carc and cbox cmp functions had bug.Tyge Løvset
Renamed: i_key_sptr / i_val_sptr to i_key_arcbox / i_val_arcbox. Other smaller updates.
2022-01-06Update cbox_api.mdTyge Løvset
2022-01-06Update cbox_api.mdTyge Løvset
2022-01-06Update cbox_api.mdTyge Løvset
2021-12-30Renamed c_default_clone to c_default_from (mostly used internally).Tyge Løvset
2021-12-22Renamed csptr to carc. i_key/val_ref renamed to i_key/val_sptr. Change ↵Tyge Løvset
inspired by Rust Arc/Rc. cbox name is taken from Rust Box type.
2021-12-22Changed the c_apply() and c_apply_pair() to one new c_apply() API. Added ↵Tyge Løvset
c_pair(v) for convenience.
2021-12-19First commit for Version 3 of STC. Main changes are consistent rename of ↵Tyge Løvset
'_del' to '_drop' and '_compare' to '_cmp'. Also i_key_ref (earlier i_key_sptr) and i_val_ref replaced by more general i_key_bind/i_val_bind.
2021-12-14Some more docs updates and new csptr examples.Tyge Løvset
2021-12-12Try fix ptr_elems.c. Some more docs for cbox. Temporarily comment out ↵Tyge Løvset
benchmark Action
2021-12-12- Added **cbox** type: container of one element: similar to std::unique_ptr ↵Tyge Løvset
/ Rust Box. - Replaced example for **csptr** in docs. - Added [**c_forpair**](docs/ccommon_api.md) macro: for-loop with "structural binding" as in c++. - Deprecated *csptr_X_make()*. Renamed to *csptr_X_new()*. Corresponding **cbox** method is *cbox_X_new()*. - Deprecated *c_default_fromraw(raw)*. Renamed to *c_default_clone(raw)*. - Deprecated `i_key_csptr` / `i_val_csptr`. Use `i_key_ref` / `i_val_ref` when specifying containers with **csptr** or **cbox** elements. - Deprecated `i_cnt`. Use `i_type` instead to define the full container type name. - Bugfixes and docs updates.