| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2022-12-20 | Restructured folders: examples, benchmarks, tests into misc folder. | Tyge Lovset | |
| 2022-10-24 | API 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-20 | Switch 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-05 | Added cstr_append_fmt(). | Tyge Løvset | |
| 2022-09-02 | Change: 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-06-01 | Reverted to default static linkage of non-templated symbols (cstr, csview, ↵ | Tyge Løvset | |
| ..), as it gives smaller executables and is convenient for small applications. (no need to define i_implement when functions is used in one translaton unit only). | |||
| 2022-06-01 | Converted all files with DOS line endings to LINUX. | Tyge Løvset | |
| 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-04-28 | Finalized template.h logic. | Tyge Løvset | |
| 2022-04-27 | Final fixes to carc and cbox; Reverted constructor name to make; (similarity ↵ | Tyge Løvset | |
| to make_shared/make_unique in c++). | |||
| 2022-04-27 | Updated examples. | Tyge Løvset | |
| 2022-04-20 | Support for cloning containers with carc and cbox. | Tyge Lovset | |
| Disabled emplace methods for containers with carc and cbox. | |||
| 2022-04-18 | Removed 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-04-18 | Converted all example to use cstr_str(&s) instead of s.str to allow SSO ↵ | Tyge Løvset | |
| string. Fixed misc warnings. | |||
| 2022-03-16 | Bugfix: 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. | |||
| 2021-12-29 | Removed warnings for MS cl -W2 and clang -pedantic -std=c99. No functional ↵ | Tyge Løvset | |
| changes. | |||
| 2021-12-23 | Fix new_sptr.c example. | Tyge Løvset | |
| 2021-12-23 | Removed emplace functions if not i_valraw or i_keyraw is defined. ↵ | Tyge Løvset | |
| Safety/optimize measure. | |||
| 2021-12-22 | Renamed 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-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-12-19 | First 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-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. | |||
| 2021-11-24 | Deprecated c_no_compare(). Define i_cmp_none instead when you have/want no ↵ | Tyge Løvset | |
| element comparison for cvec, cdeq, clist, csptr. Will give compile time error if functions depending on comparisons are used. | |||
| 2021-10-28 | updated shootouts, fixed some warnings | Tyge Løvset | |
| 2021-10-06 | Remove side-effects from i_valdel() invocations in case it's a macro func. | Tyge Lovset | |
| 2021-10-05 | Changed recommended order of defining template parameters. | Tyge Løvset | |
| 2021-09-30 | More cleanup. i_fwd is rarely needed, so removed F_tag. Use i_fwd define ↵ | Tyge Løvset | |
| flag instead. | |||
| 2021-09-29 | Changed forward declaration to support user defined container names with i_cnt. | Tyge Løvset | |
| 2021-09-29 | Changed how to specify shared pointers in containers. | Tyge Løvset | |
| 2021-09-28 | Added c_apply_n() and c_apply_pair_n() macros. Rewrote cpque.c example. | Tyge Løvset | |
| 2021-09-23 | Found bug/leak thanks to sanitizer: | Tyge Løvset | |
| #define i_key_csptr int // correct, auto setup cmp, keydel, keyfrom. #define i_key csptr_int // wrong unless cmp, keydel, keyfrom is also defined (correctly). | |||
| 2021-09-23 | Moved new examples from tests folder to examples | Tyge Løvset | |
