summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2022-05-02Fix linkage issue with clist_X_count().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.
2022-04-27Internal string container clone optimization.Tyge Løvset
2022-04-26Added cvec_X_expand_uninitialized(). Renamed cvec_X_bsearch() to ↵Tyge Lovset
cvec_X_binary_search().
2022-04-25Some docs layout improvements.Tyge Lovset
2022-04-25More README docs.Tyge Lovset
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-25Some maintainance. Updated sso_bench.cppTyge Løvset
2022-04-25Added lower_bound() examples with both sorted cvec and sorted set (csset).Tyge Løvset
2022-04-25Final cstr_str() docs update..Tyge Løvset
2022-04-24Updated docs to use cstr_str(&s) instead of s.strTyge Løvset
2022-04-24Merge pull request #21 from tylov/keyvalTyge Løvset
Version 3.5 RC
2022-04-24Fixed unfair comparison; std::move must be used in c++ push_back(). STC has ↵Tyge Løvset
almost identical performance to c++ STL, but STC cstr has 23 chars short strings vs typically 15 for c++ std::string, so STC is faster in this range.
2022-04-24Created VERSION 3.5. See News section in docs for changes.Tyge Løvset
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-22Changed API for c*map_X_push() to take a entry pair (c*map_X_value) argument ↵Tyge Løvset
instead of key + val.
2022-04-22Readded push()/emplace() to all containers missing them. Made _hash function ↵Tyge Løvset
required for i_key_bind, _eq is derived from _cmp.
2022-04-22Swapped cstr.h with alt/cstr.h with SSO (short string optimization). #define ↵Tyge Løvset
STC_OLD_CSTR 1 to use previous string (only 8 byte rep).
2022-04-21Fix for i_key_bind hash and eq functions.Tyge Løvset
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-21Fixed missing i_valclone -> i_keyclone copy when specifying i_val for sets ↵Tyge Lovset
(instead of i_key).
2022-04-20Minor adjustments.Tyge Løvset
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-20Support for cloning containers with carc and cbox.Tyge Lovset
Disabled emplace methods for containers with carc and cbox.
2022-04-19Renamed cbox_new/carc_new to cbox_make/carc_make. Disabled container emplace ↵Tyge Lovset
on arcbox elements.
2022-04-19Added #error/warnings for likely missing definitions of i_hash/i_cmp.Tyge Løvset
2022-04-18crandom.h: Renamed *_init(..) functions to *_new(..). Old names are kept but ↵Tyge Løvset
deprecated.
2022-04-18Renamed stc64_random() => crandom(), stc64_srandom(seed) => csrandom(seed). ↵Tyge Løvset
Kept old names for backward comp.
2022-04-18Renamed newly added map function put_r() to put_raw() - alias for ↵Tyge Lovset
emplace_or_assign() for symetri with insert_or_assign()/put(). Experimental, may be removed.
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.