summaryrefslogtreecommitdiffhomepage
path: root/docs/cmap_api.md
AgeCommit message (Collapse)Author
2023-09-05Renamed (half)internal functions:Tyge Løvset
cfasthash() => stc_hash() cstrhash() => stc_strhash() cnextpow2() => stc_nextpow2()
2023-09-05Renamed (half) internal function cfasthash() => cbytehash().Tyge Løvset
Fixed missing parameter in call of i_hash().
2023-08-13API CHANGES:tylov
Changed csview: becomes a null-terminated string view. Added csubview: a null-terminated string view/span, like previous csview. Note that csview works like a csubview, so not much compability issues should arise. However, some functions have changed from _sv suffix to _ss.
2023-07-26Added cmap_emplace_key() / csmap_emplace_key()tylov
More docs.
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-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-23Updated docs to reflect changes in cstr linking shared.Tyge Lovset
2023-05-20Rename c_make() macro to c_init(). c_make still available, but deprecated.Tyge Løvset
2023-04-27removing compiler warning ++.Tyge Løvset
2023-04-18Removed unneeded custom size type in maps and bits.h. Prepared for possible ↵Tyge Løvset
robin-hood impl. Improved sso_bench.c testing string hash - twice as fast as m.ankeln robin impl !?.
2023-04-10Improved naming consistency: fixed rawkey - keyraw confusion (mostly internal).Tyge Lovset
2023-03-29Removed i_less_functor, i_cmp_functor, i_eq_functor and i_hash_functor: not ↵Tyge Lovset
needed. Simplified cvec_X_eq() and cdeq_X_eq()
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-16Reverted and removed maps put function. Renamed clist node api functions. ↵Tyge Løvset
Minor fix in template.h
2023-02-15Cleaned up in size-types. API always uses intptr_t as default for all ↵Tyge Løvset
containers.
2023-02-11Some more docs. Renamed (half-)internal template parameter i_size => ↵Tyge Løvset
i_ssize. Updated external cpp maps for benchmarks.
2023-02-11More docs improvements.Tyge Løvset
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-02Fixed to allow int64_t sized maps. (defaults to 32-bit).Tyge Løvset
2023-02-01Update docs formatting and README.mdTyge Løvset
2023-02-01Massive update from unsigned sizes and indices to signed.Tyge Lovset
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-12docs and utf8 updates.Tyge Løvset
2023-01-06Removed swap() function from all containers. Use safe c_SWAP() macro instead.Tyge Løvset
2023-01-04Improved a few examples.Tyge Løvset
2022-12-23Experimental uppercase macros.Tyge Løvset
2022-12-20Renamed (reverted) cstr_new(lit) => cstr_lit(lit). Old name is deprecated ↵Tyge Løvset
(supported for now).
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-11-03Made cmap i_max_load_factor a compile time template parameter instead of ↵Tyge Løvset
runtime. Enables cmap to be NULL initialized. Currently only cvec/cdeq and csmap cannot be NULL initialized, but eventually they will.
2022-10-28Renamed some semi-internal functions which appeared to be macros by their name.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-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-26Deprecated c_pair() macro. Replaced with c_PAIR(), analogous to c_ARGsv() ↵Tyge Løvset
macro which are both unsafe regarding side effects on arg.
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-22Updated _advance() iter methods. Some have signed offsets.Tyge Løvset
utf8_peek()/utf8_peek_off() added/changed.
2022-08-13Experimental: Renamed c_autovar => c_with, c_autoscope => c_scope, ↵Tyge Løvset
c_autodefer => c_defer. May or may not be reverted before V4.0 release.
2022-08-08Reverted a minor change in template.hTyge Løvset
2022-08-08Reverted `{{` to `{ {` in documentation as markdown treats it special.Tyge Løvset
2022-08-07Refined template.h when specifying i_key_bind (and i_val_bind): i_keyclone ↵Tyge Løvset
becomes defined `c_derived_keyclone` when i_keyfrom is defined, i.e. you don't have to define both, but you can. Improved cmap docs.
2022-08-07Internal: moved some functions in csview/cstr to implementation sections.Tyge Løvset
2022-08-06c_apply() deprecated: replaced with c_forarray() macro. Updated and improved ↵Tyge Løvset
README.md docs.
2022-08-05Reduce usage of c_apply() macro.Tyge Løvset
2022-07-15cmap: No longer uses c_umul128. If `i_size` is defined by user, table is ↵Tyge Lovset
power of 2 length and bit-masking used for mapping hash to index.
2022-07-11Fixed documentation changes for size, capacity, empty. Minor changes in some ↵Tyge Lovset
ex. and map shootout.
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-01Update docs on i_implement / shared linking.Tyge Løvset
2022-06-01Update docs regarding i_implement for cstr, cview, cbits, ...Tyge Løvset