Commit Graph

337 Commits

Author SHA1 Message Date
Paul
b396f46a09 Add more tests for reveal and add a mechanism to specifiy failures from a template alias 2016-02-21 17:12:37 -06:00
Paul
70362b20ec Fix repeat_while tests for integrals 2016-02-21 09:49:23 -06:00
Paul
d638652ada Initial work for integral repeat_while 2016-02-21 08:42:53 -06:00
Paul
f87ed92113 Adding result on fix combinator injects the result into the function 2016-02-20 23:06:14 -06:00
Paul
db6f248b2a Add support for constexpr fix combinator 2016-02-20 21:14:12 -06:00
Paul
e66d9a6578 Enable static test 2016-02-20 18:05:14 -06:00
Paul
1aafe95a3b Add support using regular integers in repeat 2016-02-20 18:04:42 -06:00
Paul
2148824693 Take of unused variables in alias test 2016-02-18 17:30:16 -06:00
Paul
3c95b18288 Add missing alias test 2016-02-18 14:40:12 -06:00
Paul
15f1beb21d Annotate closing brace in test 2016-01-19 00:18:35 -06:00
Paul
d2b0aeb09e Rename to args to arg, add arg_c and use std::size_t for indices 2016-01-18 15:53:24 -06:00
Paul
38ebdf298e Fix unreachable code warning 2016-01-18 08:17:58 -06:00
Paul
06dee68d5f Fix warnings in clang 2016-01-18 08:05:51 -06:00
Paul
1d5323a165 Add missing newlines 2016-01-17 23:50:01 -06:00
Paul
ff5207ed5d Rename includes 2016-01-17 23:16:02 -06:00
Paul
5b6eaca26a Rename headers 2016-01-17 23:04:10 -06:00
Paul
3645da0fd0 Use param limit in partial adaptor 2016-01-15 11:31:18 -06:00
Paul
068081571f Use limit in pipable 2016-01-15 11:13:47 -06:00
Paul
2d1d28dee5 Add limit adaptor 2016-01-15 10:13:09 -06:00
Paul
9515d6036e Prevent moving from rvalues in pack 2016-01-13 18:42:29 -06:00
Paul
011949d4dd Add callable to capture 2015-11-19 21:53:35 -06:00
Paul
35f73e80b1 Support callable for by adaptor 2015-11-19 21:44:12 -06:00
Paul
a695f3b31c Add workaround for gcc 4.6 2015-11-01 17:35:04 -06:00
Paul
bbb89bbbd2 Member function pointers can only be constexpr in clang 2015-10-31 15:33:01 -05:00
Paul
e1241684f9 Add support for general callables in apply 2015-10-31 15:24:51 -05:00
Paul
9b18f5ef8e Fix bug with sfinae id of rank 2015-10-31 03:34:29 -05:00
Paul
259c765ec6 Add construct meta 2015-10-14 09:28:11 -05:00
Paul
8cd89e90ba Add function decorators 2015-09-26 22:19:20 -07:00
Paul
1f30f1d368 Fix dangling state 2015-09-26 17:01:37 -07:00
Paul
0b6e15682f Dont remove references when checking for default construction 2015-09-20 15:38:03 -07:00
Paul Fultz II
33502979cd Merge pull request #22 from pfultz2/default_construction
Default construction
2015-08-30 01:18:36 -05:00
Paul Fultz II
24d2dbe268 Fix errors on MSVC with default construction 2015-08-29 20:04:24 -07:00
Paul
ab32573183 Add projection to construct object 2015-08-28 16:29:19 -05:00
Paul
b0bd7b6125 Add default construction to by_adaptor 2015-08-28 16:02:02 -05:00
Paul
f81cb1f083 Add default constructors to lazy adaptor, but only for empty types 2015-08-28 15:56:39 -05:00
Paul
95de65db5e Remove variadic 2015-08-25 16:29:10 -05:00
Paul
cf0ef58048 Add rotate adaptor 2015-08-24 19:04:30 -05:00
Paul
1c85fc4d84 Fix unused warnings 2015-08-24 17:04:02 -05:00
Paul
8d7e4c0b36 Add repeat_while 2015-08-21 12:46:06 -05:00
Paul
7355cc069b Add repeat adaptor 2015-08-20 17:50:50 -05:00
Paul
d95064adf5 Add if_c 2015-08-20 12:53:00 -05:00
Paul Fultz II
1a1e173ffb Addworkaround for template specilization failure on msvc 2015-07-31 14:33:27 -07:00
Paul Fultz II
ae146a8f9d Merge branch 'alias' of https://github.com/pfultz2/Fit into msvc-alias 2015-07-30 14:32:01 -07:00
Paul Fultz II
553ae709d9 Add some more workarounds for msvc 2015-07-30 13:33:10 -07:00
Paul Fultz II
51ce3c7628 Add some workarounds and fixes for the latest msvc 2015-07-29 15:45:33 -07:00
Paul
72952dd5f9 Add more tests for empty except for msvc 2015-06-26 00:49:39 -05:00
Paul
e12b830d0a Fix ebo on gcc 2015-06-23 18:55:14 -05:00
Paul
a9196f4915 Merge branch 'filter' into alias 2015-06-23 18:17:56 -05:00
Paul
045fdf5f10 Add tests for type deduction of packs 2015-06-23 18:17:46 -05:00
Paul
961fcc042b No constexpr tuples in gcc 4.7 2015-06-20 10:28:58 -04:00
Paul
be50e865f1 Add check for constexpr tuple in test 2015-06-20 09:56:21 -04:00
Paul
92eabf8f0b Add filter tests 2015-06-20 00:28:45 -04:00
Paul
dfa32f86e4 Update test and doc 2015-06-19 23:52:00 -04:00
Paul
f3613f96a8 Add if function 2015-06-19 23:43:42 -04:00
Paul
94ecd824d6 Add more tests for combine 2015-06-17 23:08:36 -05:00
Paul
c32d7ed699 Merge branch 'construct' into combine 2015-06-14 17:52:02 -05:00
Paul
1c73f13360 Add test for sfinae std::pair 2015-06-14 07:54:03 -05:00
Paul
77e000594d Add test using std::pair 2015-06-14 07:51:36 -05:00
Paul
947bb506d3 Add tests for combine 2015-06-14 07:27:16 -05:00
Paul
e3392dd1ca Merge 2015-06-14 05:51:46 -05:00
Paul
86723399a5 Merge branch 'compress' 2015-06-14 05:50:05 -05:00
Paul
08e3b12038 Add support for constructing from initializer list 2015-06-12 17:47:46 -05:00
Paul
7d46bb8da7 Check the gcc version correctly 2015-06-12 17:16:25 -05:00
Paul
bd0243782f Fix tests for gcc 4.7 2015-06-12 17:03:44 -05:00
Paul
be40fd789a Add construct function 2015-06-12 14:13:54 -05:00
Paul
8c753017e9 Add reverse compress 2015-06-12 11:35:32 -05:00
Paul
bbe9e0f199 Add an ordered test for compress 2015-06-11 12:50:02 -05:00
Paul
cf405e63ca Add support for nullary and unary calls 2015-06-07 00:05:13 -05:00
Paul
53563e6fdb Add initial compress adaptor 2015-06-06 23:50:42 -05:00
Paul
0427ee4eac Add flow adaptor 2015-06-06 13:46:39 -05:00
Paul
456b3c8ad4 Merge branch 'master' into msvc 2015-06-01 02:02:36 -05:00
Paul
7cd9be84a2 Merge branch 'travis' 2015-06-01 02:01:58 -05:00
Paul
6b37d9e92a Add more tests for move only types 2015-05-31 21:29:58 -05:00
Paul
a6915650a3 Merge branch 'static_const' 2015-05-30 21:49:49 -05:00
Paul
e43fe39036 Merge branch 'travis' into msvc 2015-05-30 15:34:41 -05:00
Paul
2dfb2f8147 Fix unsued variable warning on gcc 4.6 2015-05-30 10:49:44 -05:00
Paul
b9c1fad29d No rely on undefined macros 2015-05-30 10:34:00 -05:00
Paul Fultz II
270df2f857 Make reveal adaptor constexor constructible in msvc 2015-05-29 23:36:54 -07:00
Paul Fultz II
fc69bfa5e9 Add some more workarounds for msvc 2015-05-29 23:28:32 -07:00
Paul
c22a8dbcce Add workaround for constructing static functions 2015-05-30 01:09:00 -05:00
Paul Fultz II
9471476793 Improve constexpr construtibility of lambdas on msvc 2015-05-29 22:19:02 -07:00
Paul Fultz II
eab396babe Fix some bugs with detecting rewritability 2015-05-29 21:19:41 -07:00
Paul
fdf143aa64 Remove the no_static_lambda config macro 2015-05-29 22:59:35 -05:00
Paul
d58f7ddf5f Rewrite lambdas on msvc 2015-05-29 22:52:08 -05:00
Paul Fultz II
ab20f2024f Add some more workarounds for msvc 2015-05-23 20:32:17 -07:00
Paul Fultz II
9aeb0459c3 Limit constexpr checking 2015-05-23 19:05:11 -07:00
Paul Fultz II
0bb073a447 Update and_ to use the slow version for msvc 2015-05-23 18:56:02 -07:00
Paul
4ce7b1542a Remove deprecated files 2015-05-23 13:00:28 -05:00
Paul
11829d9199 Rename unique address config macro 2015-05-23 12:53:49 -05:00
Paul
f87202485b Rename FIT_STATIC_FUNCTION 2015-05-23 12:50:45 -05:00
Paul
5296bb513b Add more tests for unique address 2015-05-23 09:57:01 -05:00
Paul
779c40ca58 Add FIT_STATIC_CONSTEXPR_FUNCTION to declare functions with constexpr friendliness 2015-05-22 17:12:32 -05:00
Paul
34dad9678b Merge branch 'lift' 2015-05-22 13:57:26 -05:00
Paul
4e5d110962 Use unique address on gcc 4.6 as well 2015-05-22 13:50:06 -05:00
Paul
6fd7c6f3aa Add more checks for empty 2015-05-21 11:36:31 -05:00
Paul
6cface92fe Rename config macro 2015-05-21 11:04:21 -05:00
Paul
2ff90d6eec Disable unique address on gcc 4.6 2015-05-21 02:02:17 -05:00
Paul
dc43e48349 Add include for cstdio 2015-05-21 01:31:02 -05:00
Paul
7e0c178661 Make static functions have unique addresses even when using lambdas 2015-05-21 01:19:26 -05:00
Paul
ba9c2e1eba Declare static functions as references 2015-05-20 18:53:55 -05:00
Paul
3cc469bbe1 Add test for static function across two TUs 2015-05-20 17:58:31 -05:00
Paul
95a9150254 Add test for lift operator 2015-05-20 11:44:13 -05:00
Paul
c381dc377c Add better support for constexpr by and void returning apply_eval 2015-05-19 09:26:49 -05:00
Paul
f4d8c63253 Add test for contexpr by 2015-05-13 16:00:39 -06:00
Paul
fce0d2a535 Add test for contexpr by 2015-05-13 15:58:17 -06:00
Paul
c1bac2c4d1 Add lift operator 2015-05-13 12:25:40 -06:00
Paul
5c468cc076 Update is_callable to not use function signatures 2015-05-09 23:21:37 -05:00
Paul
fdc7099822 Merge branch 'by_order' 2015-05-09 22:54:46 -05:00
Paul
4306c8cf86 Rename misname test file 2015-05-07 15:07:32 -05:00
Paul
5fef01028f Add eval and apply_eval 2015-05-05 17:57:35 -05:00
Paul
6f0453de41 Add apply utility function 2015-05-05 11:16:38 -05:00
Paul
88a5c42ef3 Guarantee order for projections 2015-05-04 16:44:33 -05:00
Paul
1969dab374 Add failure info to unpack 2015-05-01 00:55:48 -05:00
Paul
a2bbe0410b Add is_unpackable trait 2015-04-30 00:54:07 -05:00
Paul
5658f9aceb Merge branch 'unpack' 2015-04-25 19:19:30 -05:00
Paul
e16729d766 Renable the test for now 2015-04-24 21:21:10 -05:00
Paul
9f50dd3308 Change args to take an integral constant, and make it return a function. Deprecate the old usage 2015-04-24 21:19:52 -05:00
Paul
a0ac83e96f Fix problems with join on gcc 4.7 and 4.6 2015-04-23 00:19:18 -05:00
Paul
f1d969b890 Add tests for multiple unpacking 2015-04-14 14:48:19 -05:00
Paul
1384b4a932 Add initial unpack 2015-04-13 00:21:20 -05:00
Paul
d4e192098c Optimize compose for emptiness 2015-04-08 12:30:50 -04:00
Paul
c2770d1256 Merge branch 'master' into pack-empty 2015-04-07 13:30:19 -04:00
Paul
1933c917f1 Disable empty optimizations on gcc 2015-04-07 12:39:15 -04:00
Paul
c3c75c6a62 Properly check gcc 4.6 2015-03-18 16:15:51 -05:00
Paul
4b9a40f0c8 Disable copy constructible check on gcc 4.6 since its missing the type trait 2015-03-18 15:25:29 -05:00
Paul
6f373f19f6 Add fix and a test for when clang implicity deletes the copy constructor 2015-03-18 13:16:11 -05:00
Paul
c70d27449d Fix a bugs using a partial unamed placeholders 2015-03-17 14:54:53 -05:00
Paul
9370c82b2e Add initial flip adaptor 2015-02-25 01:16:48 -05:00
Paul
bca70cef72 Add reveal by default to static function 2015-02-24 01:43:12 -05:00
Paul
7a7370df71 Improve mapping parameters 2015-02-20 16:38:18 -06:00
Paul
98c9671ce8 Add initial work to make pack empty-optimized 2015-02-19 09:46:39 -05:00
Paul
7c06a5f9e1 Add mutable_adaptor to workaround libc++, since mem_fn does not meet the requirements of a FunctionObject 2015-02-15 10:25:30 -05:00
Paul
1bb8d51759 Add each_arg 2015-02-08 19:35:30 -05:00
Paul
b7e855168c Fix tests for capture_forward 2015-02-05 01:08:25 -05:00
Paul
b9ffbdcfcc Add initial capture 2015-02-05 00:31:23 -05:00
Paul
63a162fb93 Improve support for pipable and infix operators when using static functions 2015-02-01 02:26:07 -05:00
Paul
a8b454ad9f Update always to use reference_wrapper 2015-01-13 00:25:30 -05:00
Paul
4b60ac4fbb Add more tests for static functions 2014-12-16 13:51:25 -06:00
Paul
ed8e1386ef Add missing test 2014-12-16 13:44:33 -06:00
Paul
577ed66df6 Add more failure protocols 2014-12-16 11:15:23 -06:00
Paul
767ce64501 Reveal errors on lambdas 2014-12-15 17:07:39 -06:00
Paul
6e70af7550 Improve errors when using reveal 2014-12-15 16:53:38 -06:00
Paul
3434761bd1 Add the result adaptor 2014-11-25 12:59:19 -05:00
Paul
1c90767a83 Add call operators to the placeholders 2014-11-25 12:03:21 -05:00
Paul
89fde6aba8 Improve compatibility on gcc 4.6 and add some additional tests 2014-11-25 02:48:25 -05:00
Paul
60722134e3 Rename on to by 2014-10-18 11:39:36 -04:00
Paul
8a7ef72551 Use add function variable in tests 2014-10-18 11:29:08 -04:00
Paul
a455cd6913 Use workarounds for mangling overloads 2014-10-15 21:08:16 -04:00
Paul
4212389efd Add some more workarounds for gcc 2014-10-06 05:04:47 -04:00
Paul
41f04b83ca Update test to conditionally disable constexpr evaluation 2014-10-04 15:18:41 -04:00
Paul
7e2691e0a5 Add a test for copy 2014-09-20 13:33:51 -04:00
Paul
67b6b8b071 Add workaround for ICE on gcc 4.7 in the tests 2014-09-19 20:22:54 -04:00
Paul
5b2de6af87 Add tests for constexpr lazy 2014-09-18 01:55:19 -04:00
Paul
f91ad02560 Work with C++11 compilers 2014-09-18 01:41:58 -04:00
Paul
de8af62a2f Add additional tap test back in 2014-09-10 22:42:16 -04:00
Paul
b3c5e923ba Fix unused tests 2014-09-10 22:40:33 -04:00
Paul
401c0f562d Fix adaptor can be constructed as constexpr 2014-09-10 22:29:48 -04:00
Paul
4972052a5e Add infix adaptor 2014-09-10 22:19:31 -04:00
Paul
ca9bfaf1b1 Add tap function 2014-09-09 00:18:39 -04:00
Paul
1087fda8da Add indirect adaptor 2014-09-05 00:24:35 -04:00
Paul
a31ce7308c Add static lambda 2014-09-04 23:53:36 -04:00
Paul
3c970a37ca Update partial and pipable to support move only types 2014-09-03 18:27:48 -04:00
Paul
70b5692b04 Update on for move only types 2014-08-28 00:52:35 -04:00
Paul
f564b8b7e7 Update match to support move-only types 2014-08-27 23:03:19 -04:00
Paul
e4386c3530 Update support move only in lazy and mutable 2014-08-26 00:41:19 -04:00
Paul
882393839a Add support for move only types for lazy 2014-08-26 00:11:06 -04:00
Paul
fb635e8b7b Update fuse adaptor to work with move-only types 2014-08-23 17:18:10 -04:00
Paul
239828a3f8 Update fix adaptor to support move-only types 2014-08-23 17:11:02 -04:00
Paul
a07a8c5581 Add move-only tests for conditional 2014-08-22 02:07:34 -04:00
Paul
da0f3a35e3 Add a movable only assert 2014-08-22 02:07:18 -04:00
Paul
ddb926d470 Add tests for move-only functions 2014-08-22 01:49:32 -04:00
Paul
08eb522dc7 Update constructors and tests for compose 2014-08-21 01:53:52 -04:00
Paul
60271f614e Make partial constexpr friendly 2014-08-21 01:35:59 -04:00
Paul
6b7831d6f2 Make pipable constexpr friendly 2014-08-21 01:27:00 -04:00
Paul
7c9288ffc7 Update lazy to use pack 2014-08-20 21:22:42 -04:00
Paul
f841340f5c Update pack to work with movable-only types 2014-08-15 00:05:30 -04:00
Paul
da7512d2c9 Add pack_join 2014-08-11 00:38:28 -04:00
Paul
5591847a86 Add support to pack for unary packs 2014-08-10 23:48:54 -04:00
Paul
a84768149e Add tests for pack, and fix some bugs 2014-08-08 20:33:03 -04:00
Paul
3dcc2f3cdc Add macros for delegating constructors 2014-08-08 19:26:40 -04:00
Paul
67f6b2b46e Add unamed placeholder 2014-08-01 15:40:29 -04:00
Paul
9fb5b9a739 Add mutable, protect, and on adaptors 2014-08-01 15:39:49 -04:00
Paul
8e8f555bac Add identity 2014-07-28 23:43:41 -04:00
Paul
d5e3834628 Add lazy adaptor and placeholders 2014-07-28 20:45:31 -04:00
Paul
95b6c71584 Update args to start at 1 instead of 0 2014-07-28 20:44:32 -04:00
Paul
c83c77bf19 Add args function 2014-07-24 22:25:56 -04:00
Paul
e4e9bcbec9 Add initial function adaptors 2014-07-18 13:24:18 -04:00