summaryrefslogtreecommitdiffhomepage
path: root/examples/birthday.c
AgeCommit message (Collapse)Author
2022-12-20Restructured folders: examples, benchmarks, tests into misc folder.Tyge Lovset
2022-10-21Fixed wrong formatting of 64bit values various places.Tyge Løvset
Finialized cbox/carc issues.
2022-10-19Reverted back to c_forrrange from c_forloop. Still available but deprecated.Tyge Løvset
2022-10-14Replaced PRIuMAX with new c_zu macro in examples. "%zu" is not supported by ↵Tyge Løvset
mingw64 and PRIuMAX is not a replacement for "zu".
2022-09-26DEPRECATED: 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-06-01Reverted 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-01Converted all files with DOS line endings to LINUX.Tyge Løvset
2022-05-30Done 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-18crandom.h: Renamed *_init(..) functions to *_new(..). Old names are kept but ↵Tyge Løvset
deprecated.
2022-03-04Updated printf formatting to portable code. This was also to use ↵Tyge Løvset
http://winlibs.com gcc+clang with ucrt runtime-libs without warnings.
2021-12-23Removed emplace functions if not i_valraw or i_keyraw is defined. ↵Tyge Løvset
Safety/optimize measure.
2021-10-05Changed recommended order of defining template parameters.Tyge Løvset
2021-09-20Renamed 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-19Remove warnings.Tyge Løvset
2021-09-19Fixed birthday.c double delete.Tyge Løvset
2021-09-19Merge branch 'master' of github.com:tylov/STC into masterTyge Løvset
2021-09-13Very minor formatting.Tyge Løvset
2021-09-08Updated most examples to newstyle. Some changes in cpque/cstack.Tyge Løvset
2021-08-21Fix memory leaksKamil Cukrowski
2021-05-24Split c_fordefer() into c_forvar() and c_fordefer() macros.Tyge Løvset
2021-05-24Renamed 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-18Added the new c_defer(), c_with(), c_withvar() macros into the examples.Tyge Løvset
2021-04-17Changed c_emplace_items(&cont, ctype, {...}) macro with c_emplace(ctype, ↵Tyge Løvset
cont, {...}): consistent with c_init(ctype, cont, {...}).
2021-03-11Renamed public *_result_t struct member names in maps/sets for consistency ↵Tyge Løvset
with iterators.
2021-01-21Reverted namings: crand to crandom, and copt to coption.Tyge Løvset
2020-12-28Reverted crand.h API back to rename crand_* to stc64_*, and crand_next() -> ↵Tyge Løvset
stc64_rand().
2020-12-21Added some benchmarks. Fix typo in cdeq.hTyge Løvset
2020-12-17API change: Reverted back to original name used for .val in iterators to .refTyge Løvset
2020-12-16Renamed crandom to crand, including renaming of relevant files.Tyge Løvset
2020-12-16Reverted 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-14Reworked the crandom.h module. Changed API (sorry!), made uniform distr. ↵Tyge Løvset
unbiased. Removed 32-bit pcg32 PRNG.
2020-11-26Removed 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-02Changed (half)-internal *_INIT to *__init macros. Minor reformatting.Tyge Løvset
2020-10-26Updates examples using cfmt.h c_print().Tyge Løvset
2020-09-24Changed iter.get to iter.val member. Internal, but used external. Will not ↵Tyge Løvset
change again.
2020-09-20Added c_foreach (i,N) and c_foreach (N), and updated README.mdTyge Løvset
2020-09-20converted to c_forrange().Tyge Løvset
2020-09-18Changed <container>_ini macro constant to <container>_INIT, and ↵Tyge Løvset
<container>_destroy() to <container>_del.
2020-09-17Fixed range methods in cvec, and renamed typename_<container>(..) to ↵Tyge Løvset
using_<container>(..).
2020-09-16Changed earlier declare_<container>(..) macro to typedef_<container>(..)Tyge Løvset
2020-09-16Changed API to conform with std:: containers. cmap now only use first, ↵Tyge Løvset
second. for result and value types.
2020-09-15Simplified declare_ statement e.g. c_cmap(...)Tyge Løvset
2020-09-15New API Change.Tyge Løvset
2020-09-14Renamed result_t type members to first, second (from item, inserted) for ↵Tyge Løvset
conformance with std::pair
2020-09-13reverted back to separate random engine and distribution parameters.Tyge Løvset
2020-09-10Use cmap_emplace() rather than cmap_insert(). insert() is reduced to an ↵Tyge Løvset
alias of emplace() because it makes no sense using the std::unordered_map API.
2020-09-07Added back cmap insert()tylo
2020-09-06Renamed push_****(), _insert() to _emplace(). added insert_or_assign(), etc.Tyge Løvset
2020-09-03Changed constant <container>_init to <container>_ini to avoid conflict with ↵Tyge Løvset
<container>_init() method. Reverted name cprique back to cpqueue.
2020-08-29Updated crandom.h API! update to benchmark.c . Optimized cmap iter.Tyge Løvset