summaryrefslogtreecommitdiffhomepage
path: root/include/stc/alt
AgeCommit message (Collapse)Author
2022-12-20Restructured folders: examples, benchmarks, tests into misc folder.Tyge Lovset
2022-12-20Renamed (reverted) cstr_new(lit) => cstr_lit(lit). Old name is deprecated ↵Tyge Løvset
(supported for now).
2022-12-20Renamed c_sv() => c_SV() and reverted cstr_new() => cstr_lit(). Old names ↵Tyge Løvset
are deprecated (not removed).
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-27Removed dependence to STC_CSTR_V1.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-06Added c_autodrop() macro, and removed c_autobuf() which wasn't that useful ↵Tyge Løvset
(and was undocumented).
2022-11-03Renamed forward_CONTAINER(...) => declare_CONTAINER(...),Tyge Løvset
and c_is_fwd => c_declared, for the i_opt option define.
2022-10-28Renamed some semi-internal functions which appeared to be macros by their name.Tyge Løvset
2022-10-28Renamed semi-internal macro (used for c++ compability) c_make => c_init.Tyge Løvset
2022-10-14Update sso_bench.cpp benchmark, and some internal improvements.Tyge Løvset
2022-08-18Added cstr_u8_erase(). Renamed cstr_erase_n() => cstr_erase().Tyge Lovset
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-12cstr V4: Changed cstr functions to take pointers to self, not values. This ↵Tyge Løvset
is consistent with the rest of the containers. csview will still use values, as it is designed to be passed by value.
2022-08-08Updated alt/cstr.h to be in sync with cstr.hTyge Løvset
2022-07-27VERSION 3.8 BETA: Some changes in cstr / csview APIs: replace* / find*, ↵Tyge Løvset
*_u8(). . See README.md
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-21Renamed expand_uninit() functions to insert_uninit() / append_uninit().Tyge Løvset
2022-06-21Renamed cstr_rename_n() => cstr_rename_with_n() as it could be confused to ↵Tyge Løvset
replace n instances instead of n bytes.
2022-06-10removed cstr_length() and csview_length() -> use .._size().Tyge Løvset
2022-06-01Renamed cstr_replace() => cstr_replace_at(), and cstr_replace_one() => ↵Tyge Løvset
cstr_replace(self, start, search, replace).
2022-06-01Converted all files with DOS line endings to LINUX.Tyge Løvset
2022-05-30Large refactoring on strings / utf8 and some file structure.Tyge Lovset
2022-05-23Renamed cstr_find_n(self, search, pos, nmax) => cstr_find_from(self, pos, ↵Tyge Løvset
search), and cstr_replace_first(self, search, repl) => cstr_replace_first(self, pos, search, repl). // returns pos after replaced str.
2022-05-10Renamed (newish) functions expand_uninitialized to expand_uninit. + some ↵Tyge Lovset
minor changes.
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-06Made cstr_buffer() func. public, and docs for cstr_sv() - convert to csview.Tyge Lovset
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-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-27Added cstr_expand_uninitialized().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-25Some maintainance. Updated sso_bench.cppTyge Løvset
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-20Minor adjustments.Tyge Løvset
2022-04-18crandom.h: Renamed *_init(..) functions to *_new(..). Old names are kept but ↵Tyge Løvset
deprecated.
2022-04-17alt/cstr.h (sso string): added cstr_replace_all(). Header examples updated ↵Tyge Løvset
to use cstr_str(&s) instead of s.str. Some docs updates.
2022-04-15Merge branch 'master' of github.com:tylov/STCTyge Løvset
2022-04-15Updated README.md docs on template args! Reverted to put() as alias for ↵Tyge Løvset
insert_or_assign() for maps. Reverted/added push_back()/emplace_back()/pop_back() to cstack.
2022-04-11Fixed an potential issue with c_eq in template.h and missing usage in clist.hTyge Lovset
2022-04-11Added important parenthesizes around macro expressions.Tyge Løvset
2022-04-10Parenthesized args in calls to i_keyfrom(c), i_keyto(p) i_valfrom(c), ↵Tyge Løvset
i_valto(p), and i_keydrop(p) - can be defined as macro without parenthesized args.
2022-04-10Parenthesized args in calls to i_cmp(x, y), i_eq(x, y) and i_hash(x, len) - ↵Tyge Løvset
can be defined as macro without parenthesized args.
2022-04-10Parenthesized calls to i_drop(x) - can be defined as macro without ↵Tyge Løvset
parenthesis around arg.
2022-04-09- Switched from .._put() to .._push() as the "generic" method to add ↵Tyge Løvset
element to any container. - Changed clist_X_insert()/emplace() to clist_X_insert_at()/emplace_at() to make it consistent with cvec/cdeq. - Updated documentation.
2022-04-08Added cvec_X_lower_bound() function for sorted array search.Tyge Løvset
2022-04-06Refactoring cbits.h and sso alt/cstr.hTyge Løvset
2022-03-31Some unneeded strictness removed in template.hTyge Løvset
2022-03-31More fixes on cstr <-> cstr_sso compability.Tyge Løvset
2022-03-30More enhancements on cstr / cstr_sso.Tyge Løvset