Commit Graph

948 Commits (1525edf3d73cdadd6b7c93e2c00cb02dea5dfa57)

Author SHA1 Message Date
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
Daniel Kolesa 3f983afae5 support for printing iterable objects and tuples with %s 2017-02-20 19:36:55 +01:00
Daniel Kolesa 3aa5db5b1c do not implicitly to_string as a fallback in format 2017-02-20 18:31:08 +01:00
Daniel Kolesa 5a76f29dea revamped format module (more flexible, cleaner api) 2017-02-20 18:04:03 +01:00
Daniel Kolesa 3a82495a4c cleanups and optimizations 2017-02-19 18:46:43 +01:00
Daniel Kolesa 78e6771148 bounds checking pointer/string ranges 2017-02-19 18:31:08 +01:00
Daniel Kolesa d6219046be add range_put_all which can be overloaded with special optimizations 2017-02-19 18:14:09 +01:00
Daniel Kolesa e4dc237f4d revamped output ranges and input range pop funcs 2017-02-19 16:45:06 +01:00
Daniel Kolesa 2661ba91ae add back appender helper funcs, add noop_output_range and counting_output_range 2017-02-18 19:05:03 +01:00
Daniel Kolesa c22f8e4b7a remove ostd::min/max/clamp 2017-02-18 17:54:51 +01:00
Daniel Kolesa 468ddd02e2 remove appender func (unnecessary) 2017-02-18 17:25:49 +01:00
Daniel Kolesa d155f90ceb range fixes 2017-02-18 16:21:03 +01:00
Daniel Kolesa 2ce3e6496a clean up range tests 2017-02-18 15:23:57 +01:00
Daniel Kolesa 755429f901 ravamped range traits 2017-02-18 15:05:42 +01:00
Daniel Kolesa f039fc7ed9 clean up some sfinae and proxy abuse 2017-02-18 14:31:50 +01:00
Daniel Kolesa 0977b35fd2 cleaner array/pointer ctor for string ranges 2017-02-17 17:50:44 +01:00
Daniel Kolesa 8e40841219 update to new style everywhere 2017-02-16 20:49:34 +01:00
Daniel Kolesa 68c19a80fb update naming style across range module 2017-02-16 20:02:55 +01:00
Daniel Kolesa 3edcafd9a6 rename string range types to new style 2017-02-16 19:07:14 +01:00
Daniel Kolesa 296345f18e remove leftover template arg 2017-02-15 19:38:27 +01:00
Daniel Kolesa 8190a0db5c remove bad iter() overload 2017-02-15 19:35:28 +01:00
Daniel Kolesa c88660a854 standard way to retrieve range type from ranged_traits + minor fixes 2017-02-15 19:18:57 +01:00
Daniel Kolesa bd307bd52e standard iter() for any std container type without ranged_traits 2017-02-14 18:32:51 +01:00
Daniel Kolesa 67cbcb71eb move initializer_list iter/citer to range.hh 2017-02-14 17:44:24 +01:00
Daniel Kolesa 6b3707c0dc remove PointerRange, IteratorRange completely replaces it 2017-02-14 17:39:03 +01:00
Daniel Kolesa 08e980cd0a start cleaning up the range system for nicer syntax 2017-02-13 23:33:52 +01:00
Daniel Kolesa 21da5ec3d1 make the pipe op a member to make it to work automagically on user ranges 2017-02-13 21:13:10 +01:00
Daniel Kolesa 6ba3b93018 cleaner pipe operator definition for ranges 2017-02-13 20:43:23 +01:00
Daniel Kolesa fd6a47c223 re-add zero-argument format impl and fix char_traits usage for const char ranges 2017-02-12 23:02:49 +01:00
Daniel Kolesa 33bab6eb72 fix wrong return type 2017-02-12 22:51:43 +01:00
Daniel Kolesa 667b2d50ea use size_t for format results 2017-02-11 01:28:14 +01:00
Daniel Kolesa dc640d2c1e no need for the other format_impl overload 2017-02-11 01:11:22 +01:00
Daniel Kolesa 13477db869 add a format() overload to format a single spec without a format string + use 2017-02-11 00:18:41 +01:00
Daniel Kolesa d56a233120 partial cleanup of format module, better error handling 2017-02-10 23:49:00 +01:00
Daniel Kolesa 9ab2093ed4 clean up join range pop/front 2017-02-10 21:06:08 +01:00
Daniel Kolesa 2e773b3849 clean up join/zip ranges with c++17 fold expressions 2017-02-10 20:26:13 +01:00
Daniel Kolesa d06637eac6 actually use write_bytes directly 2017-02-10 17:48:19 +01:00
Daniel Kolesa 922f19b776 make write(x) equivalent to write("%s", x) 2017-02-10 17:44:06 +01:00
Daniel Kolesa e1f5cc477f extend IteratorRange to handle pointers as special case 2017-02-09 23:38:11 +01:00
Daniel Kolesa 052fa58be4 clean up pointer range constructor 2017-02-09 22:55:17 +01:00
Daniel Kolesa 946cf9d3fe use char_traits in string range types 2017-02-09 21:39:35 +01:00
Daniel Kolesa 2d5c4cab3f clean up pointer/string ranges 2017-02-09 21:27:20 +01:00
Daniel Kolesa c5dd6bb8c3 remove obsolete type traits 2017-02-09 20:56:15 +01:00
Daniel Kolesa ea6d3d4bbf clean up IteratorRange, use unsigned variant of difference for size 2017-02-09 20:13:52 +01:00
Daniel Kolesa 463c7275d5 use ranged_traits specialization for static arrays 2017-02-09 20:07:10 +01:00
Daniel Kolesa 79809a610b remove functional.hh 2017-02-08 01:06:50 +01:00
Daniel Kolesa efa103c362 consistent error msg 2017-02-01 22:42:18 +01:00
Daniel Kolesa 9e87d372de allow constructing unordered_maps from any 2-tuple range 2017-02-01 22:38:25 +01:00