summaryrefslogtreecommitdiffhomepage
path: root/include/stc/algo
AgeCommit message (Collapse)Author
2023-07-26Added cmap_emplace_key() / csmap_emplace_key()tylov
More docs.
2023-07-23- algo/sort.h: Use plural form of i_key (or i_val) to define default name ↵tylov
for sort, like: <i_key>s_sort_n(data, n). - Updated some examples.
2023-07-21Renamed crange_make(...) => crange_init(...), deprecated crange_make().tylov
2023-07-21Renamed badly abbreviated names in crand.h.tylov
Moved coroutine.h from algo subfolder to stc. Updated coroutine.h and docs.
2023-07-20Added Task-object to coroutines and true stackless execution.tylov
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-07-13Moved c_defer() macro from raii.h to ccommon.h. Some changes in cspan.tylov
2023-07-12Changed docs and examples to use i_key* template parameters instead of ↵tylov
i_val* for all non-maps. Renamed c_ASSERT() to c_assert() and added optional message parameter to c_static_assert().
2023-07-10Reverted from crange_init() to crange_make() again. Added to changelog for v4.3tylov
2023-07-04Removed cco_switch; won't work without state.Tyge Løvset
2023-07-02Update in coroutine API. cco_yield, cco_await, cco_await_on, cco_block_on ↵Tyge Løvset
has changed. cco_final: renamed => cco_cleanup: Reverted i_retain template param back to => i_more.
2023-06-21Update of cstr_append_uninit().Tyge Løvset
2023-06-21Fixed cco_switch: emulation of switch inside coroutines.Tyge Lovset
2023-06-21Minor fix.Tyge Lovset
2023-06-21Added cco_switch(x) {}, cco_case(val) {}, and cco_default {} to use inside ↵Tyge Lovset
coroutines.
2023-06-20Added some more to coroutine.hTyge Løvset
2023-06-20Renamed `i_more` => `i_retain` (avoids undef of template parameters on next ↵Tyge Løvset
STC container inclusion).
2023-06-20Internal only:Tyge Løvset
Renamed _cx_memb() macro to _cx_MEMB() Renamed _cx_self macro to _cx_Self
2023-06-14Fixed a bug in cco_await_on(), and added _pull() function to random access ↵Tyge Løvset
containers (moves element out of container, ie no drop).
2023-06-13Added cco_closue(Ret, Closure) to define coroutine closure.Tyge Løvset
Added back cco_await_on(child) calls.
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-06-08More small adjustments.Tyge Lovset
2023-06-07cco: Minor internal cleanup + added cco_timer_elapsed().Tyge Løvset
2023-06-06Fixed some logic in coroutines.Tyge Løvset
Changed API in c11/print.h (not officially part of STC as it is C11).
2023-06-06Warning fixes and docs update.Tyge Løvset
2023-06-06Switched to double for times in cco_timer and cco_time, etc.Tyge Løvset
Reverted to just use Sleep on win32 - same effect.
2023-06-05Updated timers and time functions to microseconds (from milli).Tyge Løvset
2023-06-04Added dining_philosophers.c coroutine example.Tyge Løvset
Fixed cco_stop() when in state 0. Renamed cco_timer_with(msec) => cco_timer_from(msec) Renamed cco_sem_with(val) => cco_sem_from(val)
2023-06-01Changed API for cco_timer and cco_sem.Tyge Løvset
2023-05-31Simplified coroutine API. Removed unneeded cco_await_coro() and ↵Tyge Løvset
cco_yield_coro().
2023-05-30Changed extern to dllimport for Sleep() function.Tyge Løvset
2023-05-26Minor addition to coroutine API.Tyge Løvset
2023-05-24Fixed portability for csleep_ms() function.Tyge Løvset
2023-05-24More coro adjustments.Tyge Løvset
2023-05-24coroutine.h:Tyge Løvset
- Renamed Liigo's coroutine macro cco(x) => cco_routine(x). - Removed cco_begin(x), cco_end() macros. Replaced by cco_routine(x). - Replaced csleep_ms() with csleep_us(), using select() which is portable. - Updated all coroutine examples.
2023-05-24Merge pull request #57 from liigo/dev43Tyge Løvset
add `cco` macro, block style coroutine definition
2023-05-24Fixes for clang compiler.Tyge Løvset
2023-05-20Rename c_make() macro to c_init(). c_make still available, but deprecated.Tyge Løvset
2023-05-18Fixing find_in() in cdeq, and add support c_eraseremove_if() for cqueue and ↵Tyge Løvset
cdeq.
2023-05-18Huge update: cqueue and cdeq completely rewritten. cvec and cdeq API ↵Tyge Lovset
harmonized. Docs update/improved.
2023-05-18add `cco` macro, block style coroutine definition, to replace cco_begin(co) ↵Liigo Zhuang
&& cco_end()
2023-05-13File priv/raii.h no longer included by stc/ccommon.h, instead moved to ↵Tyge Løvset
stc/algo/raii.h and included by stc/calgo.h
2023-05-09fixed typo.Tyge Lovset
2023-05-09Renaming.Tyge Lovset
2023-05-09reverted cco_await_done => cco_await_at.Tyge Lovset
2023-05-08coroutine cco_await_* and cco_yield_* changes.Tyge Løvset
2023-05-08Final coroutine API updates.Tyge Løvset
2023-05-08More coroutine updates.Tyge Løvset
2023-05-08Updated API for timer and semaphores in coroutine.h (ctimer, csem)Tyge Løvset