| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2022-12-20 | Restructured folders: examples, benchmarks, tests into misc folder. | Tyge Lovset | |
| 2022-11-02 | Change to c_forwhile: takes start iter, not container. | Tyge Løvset | |
| Other minor updates. | |||
| 2022-10-19 | Reverted back to c_forrrange from c_forloop. Still available but deprecated. | Tyge Løvset | |
| 2022-09-26 | DEPRECATED: c_forrange(): replaced with c_forloop(). This uses 'long long' ↵ | Tyge Løvset | |
| as iter type, i.e. "%lld" printf format. crange_from() renamed to crange_make(). More docs. | |||
| 2022-09-23 | Reverted c_forrange() macro with 3 or more args: swapped 1st and 2nd arg again. | Tyge Løvset | |
| 2022-09-23 | Renamed c_forloop* macros to more descriptive c_forwhile*. | Tyge Løvset | |
| 2022-09-23 | Deprecated c_forarray, c_forarray_p macros - both replaced by c_forlist, and ↵ | Tyge Løvset | |
| is consistent with other c_for* macros. | |||
| 2022-09-22 | Renamed .idx => .index in c_forfilter() macro | Tyge Løvset | |
| 2022-09-21 | Added cstr_push(), cstr_pop() - push/pop one utf8 char. | Tyge Løvset | |
| Renamed c_forpred() to c_forloop() - used by c_forfiltered(). | |||
| 2022-08-06 | c_apply() deprecated: replaced with c_forarray() macro. Updated and improved ↵ | Tyge Løvset | |
| README.md docs. | |||
| 2022-07-31 | VERSION 3.9: API change in c_forrange() with >= 3 args. csview updates. | Tyge Løvset | |
| 2022-06-01 | Converted all files with DOS line endings to LINUX. | Tyge Løvset | |
| 2022-06-01 | Added src/libstc.c which implements all non-templated functions (e.g. from ↵ | Tyge Løvset | |
| cstr, csview, cbits, crandom), but also clist.h mergesort. - Linking with this object file eliminates the need to define i_implement in one file for these types (or i_extern for non-templated functions in templated container, currently only clist.h) | |||
| 2022-05-30 | Done refactoring: | Tyge Løvset | |
| - Non-templated types (cstr, csview, cbits, crandom) have no longer default static linking. Now i_header is defined, i.e. files are as headers only. ==> Define `i_implement` before file inclusion. Still possible to do static linkage by defining `i_static` before inclusion or global STC_STATIC. - Templated containers still have static linkage by default. - Renamed csview_substr(), csview_slice() to csview_substr_ex(), csview_slice_ex(). Added simpler inlined csview_substr(), csview_slice(). | |||
| 2022-05-22 | Changed 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-04-18 | crandom.h: Renamed *_init(..) functions to *_new(..). Old names are kept but ↵ | Tyge Løvset | |
| deprecated. | |||
| 2022-04-11 | Fixed an potential issue with c_eq in template.h and missing usage in clist.h | Tyge Lovset | |
| 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-01-03 | "gcc/clang -O2 -Wall -std=c99 -pedantic" compiles examples with no warnings. ↵ | Tyge Løvset | |
| More cleanups. | |||
| 2021-12-29 | Removed warnings for MS cl -W2 and clang -pedantic -std=c99. No functional ↵ | Tyge Løvset | |
| changes. | |||
| 2021-12-22 | Changed the c_apply() and c_apply_pair() to one new c_apply() API. Added ↵ | Tyge Løvset | |
| c_pair(v) for convenience. | |||
| 2021-10-29 | Renamed ..._value_t -> ..._value, etc. Deprecated, still works for cvec, ↵ | Tyge Løvset | |
| cdeq, cmap, csmap, cslist | |||
| 2021-10-05 | Changed recommended order of defining template parameters. | Tyge Løvset | |
| 2021-09-23 | Cleanup: Replaced c_emplace() macro with more general ↵ | Tyge Løvset | |
| c_apply()/c_apply_pair() macros, and removed c_var() macro. Removed CX_emplace_items() member functions in containers used by c_emplace(). | |||
| 2021-09-20 | Renamed macros: breaking changes for Version 2.0! | Tyge Lovset | |
| c_forvar => c_autovar c_forscope => c_autoscope c_forauto => c_auto Removed: c_fordefer(x); use c_forscope(0, x) instead. Added: c_exitauto; // continue | |||
| 2021-09-08 | Updated most examples to newstyle. Some changes in cpque/cstack. | Tyge Løvset | |
| 2021-05-24 | Split c_fordefer() into c_forvar() and c_fordefer() macros. | Tyge Løvset | |
| 2021-05-24 | Renamed c_with => c_fordefer, and removed c_withvar. Macros were too ↵ | Tyge Løvset | |
| deceiving and hid the fact that it was for-loops. Now it is more explicit. | |||
| 2021-05-18 | Added the new c_defer(), c_with(), c_withvar() macros into the examples. | Tyge Løvset | |
| 2021-04-17 | Changed c_emplace_items(&cont, ctype, {...}) macro with c_emplace(ctype, ↵ | Tyge Løvset | |
| cont, {...}): consistent with c_init(ctype, cont, {...}). | |||
| 2021-04-02 | Rewrote clist API: Now in line with std::list API instead of ↵ | Tyge Løvset | |
| std::forward_list, but still same single linked list rep. Weaker iterator validity, see updated docs. | |||
| 2021-02-21 | Renamed emplace_put() to emplace_or_assign(). May add put() as alias to ↵ | Tyge Løvset | |
| insert_or_assign(). | |||
| 2021-02-20 | Renamed push_items to emplace_n | Tyge Løvset | |
| 2021-01-24 | Improved cvec cdeq. Must be initied with cvec_X_init() and cdeq_X_init(). ↵ | Tyge Løvset | |
| Not cvec_inits. Improved docs. | |||
| 2021-01-21 | Reverted namings: crand to crandom, and copt to coption. | Tyge Løvset | |
| 2020-12-28 | Reverted crand.h API back to rename crand_* to stc64_*, and crand_next() -> ↵ | Tyge Løvset | |
| stc64_rand(). | |||
| 2020-12-17 | API change: Reverted back to original name used for .val in iterators to .ref | Tyge Løvset | |
| 2020-12-16 | Renamed crandom to crand, including renaming of relevant files. | Tyge Løvset | |
| 2020-12-16 | Reverted back API to easier naming scheme of crandom.h types and methods. | Tyge Løvset | |
| Highly optimized generation of unbiased uniform bounded random numbers. Only 33% overhead. | |||
| 2020-12-14 | Reworked the crandom.h module. Changed API (sorry!), made uniform distr. ↵ | Tyge Løvset | |
| unbiased. Removed 32-bit pcg32 PRNG. | |||
| 2020-11-26 | Removed stc/cfmt.h, as _Generic requires C11. I have made it a gist: ↵ | Tyge Løvset | |
| https://gist.github.com/tylov/bcc956a4779f1d14204e66a14f17beb9 All examples are reverted to use printf() instead of c_print(). | |||
| 2020-11-03 | renamed __init to _inits | Tyge Løvset | |
| 2020-11-02 | Changed (half)-internal *_INIT to *__init macros. Minor reformatting. | Tyge Løvset | |
| 2020-10-26 | Updates examples using cfmt.h c_print(). | Tyge Løvset | |
| 2020-09-24 | Changed iter.get to iter.val member. Internal, but used external. Will not ↵ | Tyge Løvset | |
| change again. | |||
| 2020-09-20 | converted to c_forrange(). | Tyge Løvset | |
| 2020-09-18 | Changed <container>_ini macro constant to <container>_INIT, and ↵ | Tyge Løvset | |
| <container>_destroy() to <container>_del. | |||
| 2020-09-17 | Fixed range methods in cvec, and renamed typename_<container>(..) to ↵ | Tyge Løvset | |
| using_<container>(..). | |||
| 2020-09-16 | Minor. | Tyge Løvset | |
| 2020-09-16 | Changed iterator API in cset and clist. From i.get->value to *i.get | Tyge Løvset | |
