Commit Graph

3623 Commits

Author SHA1 Message Date
8961f097cd log: choose sink based on LOG_SINK 2020-04-21 10:56:04 +10:00
c481a7cf38 log/sink: implement ostream sink 2020-04-21 10:55:47 +10:00
5cc0688b35 log/sink/console: use override 2020-04-21 10:55:03 +10:00
cf196fe601 log/sink/console: remove unneeded header 2020-04-21 10:54:51 +10:00
78608c2a61 log/level: move level_width query into level unit 2020-04-21 10:54:10 +10:00
b8d0d50c6a maths: prefer brace value initialisation for almost_equal<int>
This is more likely to catch future issues with lossy transforms.
2020-04-06 13:12:52 +10:00
4a556af89d types/tagged: add 'visit' call 2020-04-01 14:52:32 +11:00
c9b5605213 types/tagged: add type query 2020-04-01 14:52:17 +11:00
757253ee4e string: add string_view overload to to_upper 2020-04-01 13:02:28 +11:00
7b5a0b7ad0 style 2020-03-30 12:29:24 +11:00
a69df0ae02 endian: use three-way comparison for endian types 2020-03-21 13:17:18 +11:00
272e8f286a alloc/easy: add move initialisation for array allocations 2020-03-18 14:18:27 +11:00
2aafaeb119 array: add md stubs 2020-03-16 14:14:16 +11:00
b70c20d284 region: support default construction of step iterator
This allows use in some std::algorithms that assume the iterator
conforms to LegacyIterator
2020-03-16 14:13:25 +11:00
7261bd7776 coord/traits: expand value_trait to support scalars 2020-03-16 14:13:02 +11:00
29e876c712 cast: prefer concepts to SFINAE 2020-03-16 14:12:33 +11:00
c528e28a0e concepts: add "supports_indexing" 2020-03-16 14:12:04 +11:00
6b53abd6b4 concepts: move std wrappers into one group 2020-03-16 14:11:50 +11:00
67a3e016e1 maths: document log2 and log2up 2020-03-16 14:11:23 +11:00
fb13c0fb0f job/dispatch: explicitly specify the dispatchable region 2020-03-12 12:45:45 +11:00
8697c103d6 region: add intersection operation 2020-03-12 12:45:29 +11:00
7550ad7c23 concepts: add cbegin/cend requirements to iterable 2020-03-12 12:44:42 +11:00
0c199eaf44 colour: add srgba1 and srgba1f convenience typedefs 2020-03-12 12:44:20 +11:00
30f2db920c concepts: add the supports_iterator_traits concept 2020-02-27 12:22:13 +11:00
2401cd60cf goem/segment: indices should be const 2020-02-27 11:50:24 +11:00
6cf54f6f14 cast: use concepts to constrain narrow 2020-02-27 11:49:41 +11:00
5d0b75d129 introspection: test variadic template type_name 2020-02-27 08:00:18 +11:00
7c92271296 introspection: return the template parameters of a type 2020-02-27 07:59:55 +11:00
813148ca51 introspection: add example __PRETTY_FUNCTION__ values 2020-02-27 07:59:40 +11:00
dc46d2d52b algo/search: add balanced scan 2020-02-27 07:59:22 +11:00
f34d5ce278 introspection: add test for template-template-type reflection 2020-02-27 07:05:57 +11:00
ec1f354d16 iterator/zip: avoid std::forward_as_tuple for zip value_type
This tends to result in references to temporaries higher up the stack
being returned. decltype on the iterator dereference is a more reliable
method to determine the return type.
2020-02-26 12:04:02 +11:00
f1aa7fa775 iterator/zip: rewrite for simplicity and forwarding support 2020-02-25 16:17:04 +11:00
58b42d5d9b iterator/iota: declare the iterator type first up
This means reduces the chances of mixing up inner/outer types, and
eliminates the use of the iterator typedef within teh container.
2020-02-25 16:15:45 +11:00
1e3c342482 functor: style 2020-02-25 16:15:21 +11:00
ebb99a6f4e tuple/value: map should return return a forwarding tuple
This allows us to maintain references, rather than provoke copies.
2020-02-25 12:02:53 +11:00
a25a16e00e tuple/value: style 2020-02-25 12:02:45 +11:00
eac5957f60 tuple/value: correct the test case values 2020-02-25 11:31:56 +11:00
40694c4138 concepts: disable tuple_element test for tuple 2020-02-25 11:23:50 +11:00
61cc9b9ed2 tuple/value: add all and none queries 2020-02-25 11:17:05 +11:00
1427a61745 concepts: protect tuple concept against empty tuples 2020-02-25 11:16:58 +11:00
fb4e70d146 concepts: add initial invocable concept 2020-02-25 11:16:16 +11:00
25460cc527 iterator/cast: add skeleton of a casting iterator 2020-02-24 14:41:37 +11:00
28a7890681 types/tagged: use concepts to restrict assignable types 2020-02-24 14:41:37 +11:00
ebd88b25e7 iterator/zip: use the iterable concept for zip construction 2020-02-24 14:41:37 +11:00
3791c8b8ee iterator: add methods to conform iota to LegacyIterator 2020-02-24 14:41:37 +11:00
84cbbbd049 concepts: add tuplelike concept 2020-02-24 14:41:37 +11:00
455b3b973f concepts: add scalar, enumeration, and iterable concepts 2020-02-24 14:41:37 +11:00
8f39ed706d concepts: style 2020-02-24 14:37:18 +11:00
8ddf4a915d concepts: swappable should test using std::swap 2020-02-24 14:36:59 +11:00