Commit Graph

895 Commits (c96d64e5baff7d518361622b67b6fc9bf4fbf0b6)

Author SHA1 Message Date
Daniel Kolesa e97e70b427 constructor cleanup, const correctness, swap fixes, explicit bool, comments 2017-03-07 17:39:40 +01:00
Daniel Kolesa 483ec9df3b only initialize the context with a valid function 2017-03-07 02:19:25 +01:00
Daniel Kolesa 573c001786 put coroutine_context in detail and inherit from it 2017-03-07 02:07:13 +01:00
Daniel Kolesa 248acbeac5 use p_func to check finished status (no separate bool) 2017-03-07 01:25:56 +01:00
Daniel Kolesa 7ba1f9265b make value-returning no-argument coroutines iterable 2017-03-06 19:01:17 +01:00
Daniel Kolesa 64d92743e4 only pass yield to coroutines, make them movable and swappable, improve examples 2017-03-06 18:38:50 +01:00
Daniel Kolesa b9260c8918 add coroutine examples 2017-03-06 03:32:39 +01:00
Daniel Kolesa e0d6839c8c add build.sh to build ostd stuff 2017-03-06 03:28:39 +01:00
Daniel Kolesa 9a194343f3 operator bool on coroutine should be inverse 2017-03-06 02:09:52 +01:00
Daniel Kolesa a4e17e22c7 fix coroutine + initial proof of concept generator (bad impl) 2017-03-06 00:47:15 +01:00
Daniel Kolesa 1f946bff50 forwarding of coroutine args/results 2017-03-05 23:49:20 +01:00
Daniel Kolesa 34a434ab53 move helpers to coro_base 2017-03-05 23:07:00 +01:00
Daniel Kolesa 5c209872b5 fix narrowing 2017-03-05 21:56:41 +01:00
Daniel Kolesa ed514c28a6 specialize coroutines for zero args 2017-03-05 20:11:39 +01:00
Daniel Kolesa d369bb4b8a use generic arg so we can construct coroutines from lambdas using = 2017-03-05 19:50:25 +01:00
Daniel Kolesa 1bb2dffc63 return the arg directly from yield with single-arg coroutines 2017-03-05 19:45:26 +01:00
Daniel Kolesa 2a842ef9da reimplement coroutine using the new fcontext assembly 2017-03-05 16:48:44 +01:00
Daniel Kolesa ce2a8ed758 initial import of context switching assembly from boost.context 2017-03-05 15:30:41 +01:00
Daniel Kolesa 8ecaa338bc add initial coroutine module (slow ucontext_t, POSIX only, WiP) 2017-03-04 18:25:33 +01:00
Daniel Kolesa d33ca88d0a fix bug with bool writing in format 2017-03-04 18:24:18 +01:00
Daniel Kolesa 60cc9ee47e rename standard streams to feel less keywordy 2017-03-04 15:43:53 +01:00
Daniel Kolesa 3c33395fe6 stream write/writef cleanup 2017-03-02 22:52:09 +01:00
Daniel Kolesa d9a65da5bf simplify write/writeln 2017-03-02 20:01:01 +01:00
Daniel Kolesa c93e818247 rvalue reference matching ostd::iter 2017-03-02 19:50:01 +01:00
Daniel Kolesa 22a5640a59 revamped stream errors, add get_line on streams and stream line range 2017-03-02 18:12:00 +01:00
Daniel Kolesa f13f11f54e format helper func with locale support 2017-03-01 19:19:46 +01:00
Daniel Kolesa 15d6b0157b remove detail::fmt_stream_range (not necessary anymore) 2017-02-28 17:22:29 +01:00
Daniel Kolesa 740914d772 copy the item too 2017-02-27 17:55:05 +01:00
Daniel Kolesa e0574308a0 fully generic stream range (works on any type of stream) 2017-02-27 17:52:52 +01:00
Daniel Kolesa 5beecdf370 more elaborate format example 2017-02-26 15:35:17 +01:00
Daniel Kolesa 9f286f88f3 do not use digit grouping for pointers 2017-02-26 04:23:51 +01:00
Daniel Kolesa ffc5bc0442 strip ostd namespace from example 2017-02-26 04:14:51 +01:00
Daniel Kolesa dc1d3aa373 example of locale specific numeric formatting 2017-02-26 04:11:23 +01:00
Daniel Kolesa 2f4f9dd440 prevent overflow when grouping is in place 2017-02-26 03:28:23 +01:00
Daniel Kolesa 7164019e22 locale digit grouping support for integer format 2017-02-26 03:21:26 +01:00
Daniel Kolesa 8be2e1fa56 basic locale awareness in streams (including writef/ln integration) 2017-02-26 02:06:02 +01:00
Daniel Kolesa db991ca03d locale-aware format_spec 2017-02-26 01:04:33 +01:00
Daniel Kolesa 98fb0e3e2e fix escaping for default range print 2017-02-26 00:32:35 +01:00
Daniel Kolesa ccb0564bfc clean up range writer 2017-02-26 00:30:07 +01:00
Daniel Kolesa bd5aa4795c custom formatting is now done with format_traits
Allows definition for any type, even in any foreign namespace.
2017-02-25 19:17:08 +01:00
Daniel Kolesa e714e5f3fb add new format flag @, make it escape always (never toggle) 2017-02-25 18:56:41 +01:00
Daniel Kolesa e90b0868aa make the dash flag toggle current escaping mode in format 2017-02-25 17:33:18 +01:00
Daniel Kolesa 7b65f8b64e readme clarification 2017-02-25 15:43:07 +01:00
Daniel Kolesa 262e691a4d fix test runner 2017-02-25 14:56:51 +01:00
Daniel Kolesa 0ce662131b document format example 2017-02-25 14:34:33 +01:00
Daniel Kolesa 81ccca0e52 ios based formatting of floats (no heap alloc and basic locale awareness) 2017-02-25 04:03:36 +01:00
Daniel Kolesa 602aa7f182 clean up format 2017-02-22 03:32:03 +01:00
Daniel Kolesa 2665c20351 support for precision in integer format 2017-02-21 18:22:25 +01:00
Daniel Kolesa a23a42da1f remove ostd::to_string and ostd::concat (both replaced by more flexible format) 2017-02-20 20:43:38 +01:00
Daniel Kolesa 1e1f6d63a2 support for formatting tuples in format strings via %<contents%> 2017-02-20 20:14:26 +01:00