Commit Graph

3367 Commits

Author SHA1 Message Date
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
df924f049b concepts: add constructible_from 2020-02-24 14:36:40 +11:00
6a15651694 maths: convert to concepts 2020-02-18 12:18:43 +11:00
c5174c2817 concepts: add numeric 2020-02-18 12:18:26 +11:00
706e77f44a concepts: add legacy_input_iterator and legacy_iterator 2020-02-18 12:18:05 +11:00
c001502aa2 concepts: add integral and floating concepts 2020-02-18 12:17:37 +11:00
d45433e97f quaternion: add a subtraction operator 2020-02-18 12:17:06 +11:00