Commit graph

254 commits

Author SHA1 Message Date
q66 052fa58be4 clean up pointer range constructor 2017-02-09 22:55:17 +01:00
q66 946cf9d3fe use char_traits in string range types 2017-02-09 21:39:35 +01:00
q66 2d5c4cab3f clean up pointer/string ranges 2017-02-09 21:27:20 +01:00
q66 c5dd6bb8c3 remove obsolete type traits 2017-02-09 20:56:15 +01:00
q66 ea6d3d4bbf clean up IteratorRange, use unsigned variant of difference for size 2017-02-09 20:13:52 +01:00
q66 463c7275d5 use ranged_traits specialization for static arrays 2017-02-09 20:07:10 +01:00
q66 79809a610b remove functional.hh 2017-02-08 01:06:50 +01:00
q66 efa103c362 consistent error msg 2017-02-01 22:42:18 +01:00
q66 9e87d372de allow constructing unordered_maps from any 2-tuple range 2017-02-01 22:38:25 +01:00
q66 407d4a524f forgot to actually use the new template params 2017-02-01 20:58:54 +01:00
q66 0842a24cd3 complete template param support for all ranged make_ funcs and ranged_traits 2017-02-01 20:56:29 +01:00
q66 84f01c1286 remove memory.hh 2017-02-01 20:19:14 +01:00
q66 3e683a2436 remove silly intermediate ranges for writef, print directly to stream 2017-02-01 19:30:15 +01:00
q66 077835e4b6 range system fixes, add iterator types to RangeHalf, optimize make_vector(R) 2017-02-01 18:29:42 +01:00
q66 e0072773e1 remove custom hashtable; no longer necessary 2017-01-31 19:31:55 +01:00
q66 1f83e8c1b0 cleaner range passing in second version of make_CONTAINER 2017-01-31 19:17:46 +01:00
q66 fbdaf77b62 std::unordered_map initial range support (no extra template args yet) 2017-01-31 19:11:38 +01:00
q66 6ec72a6ecd add IteratorRange to make a range out of any two iterators 2017-01-30 22:07:12 +01:00
q66 62b0c2ecf7 hash operator() needs to be const 2017-01-30 19:31:24 +01:00
q66 1abf3bb3ad remove Maybe (use optional instead) 2017-01-30 19:27:25 +01:00
q66 0ee0d3231c use standard types 2017-01-30 19:23:12 +01:00
q66 2884f4b47b use size_t and ptrdiff_t 2017-01-30 19:11:49 +01:00
q66 1db7529ad9 remove custom hashing 2017-01-30 18:56:38 +01:00
q66 343c684820 initial proper string integration 2017-01-30 01:16:29 +01:00
q66 632147c5fb bump compiler 2017-01-29 21:22:40 +01:00
q66 58a361e6e0 remove ostd::Function after all (never supported allocators properly anyway) 2017-01-29 18:38:37 +01:00
q66 2c7f98f57e use standard swap 2017-01-29 15:56:02 +01:00
q66 a8f7122d45 use standard declval 2017-01-29 15:29:11 +01:00
q66 a41299505c use unique_ptr 2017-01-29 15:16:13 +01:00
q66 71515c5383 actually keep our own function because libstdc++'s has no allocator support 2017-01-28 23:00:05 +01:00
q66 780f7e5b21 use standard function 2017-01-28 22:46:48 +01:00
q66 c751275d83 remove remains of tuple headers 2017-01-28 19:39:50 +01:00
q66 c8c24300ee fully use standard tuples 2017-01-28 19:06:52 +01:00
q66 2e7bba2c95 remove Pair, more standard tuple usage etc 2017-01-28 18:52:34 +01:00
q66 7e96183648 start moving over to standard tuple 2017-01-28 18:30:31 +01:00
q66 19226d51af since we can't ADL for std container iter, use different system
This introduces ranged_traits structure, which by default works
for things defining .iter(), but also allows you to override it
per type at later stage, which comes in handy for std containers.

This is because we can't extend the std namespace in any way and
we still need to be able to add iterable functionality to std
containers even at later stage than iter() is defined.
2017-01-26 00:27:54 +01:00
q66 0bf36b679a iter extensions for std::array 2017-01-25 23:46:48 +01:00
q66 56a3327dce use standard vector and move/forward 2017-01-25 01:57:24 +01:00
q66 27005f1715 remove native ostd threading/atomic stuff (just use c++11 ones) 2017-01-24 00:35:07 +01:00
q66 41ad273c32 std allowed by default 2017-01-14 15:09:27 +01:00
q66 32cd56d3c1 linux/gcc fixes 2017-01-09 17:58:40 +01:00
q66 1eb3db64f0 use implicit ctor 2016-11-16 19:09:19 +01:00
q66 c450600097 add type trait to check type size in bits 2016-11-15 22:51:15 +01:00
q66 e7c6032edb add initial numeric limits implementation (type-generic min/max/etc) 2016-11-15 22:46:03 +01:00
q66 9e609e0057 rename disown to release (consistent with other places) 2016-09-18 19:30:55 +02:00
q66 9251fb506f remove unneeded code 2016-09-18 19:22:54 +02:00
q66 9d174013e6 fix 2016-09-11 21:21:07 +02:00
q66 519c9c7624 more noexcept and readme note 2016-09-11 21:20:03 +02:00
q66 1586cedd17 noexcept for memory.hh 2016-09-11 20:46:53 +02:00
q66 70a2b88898 allow non-static methods to be bound to Function 2016-09-11 19:57:42 +02:00