21 Commits

Author SHA1 Message Date
Chris Robinson
87e88e97e2 Try again to satisfy MSVC 2021-10-09 08:41:08 -07:00
Chris Robinson
85d98e32ed Explicitly initialize the first union member 2021-10-09 05:56:39 -07:00
Chris Robinson
2d3b501fd8 Add more noexcept when possible
And try to fix MSVC missing a constructor
2021-10-09 05:30:16 -07:00
Chris Robinson
c893ca0491 Always define optional::operator=.
MSVC doesn't seem to like using enable_if for special member functions.
2021-10-09 03:39:33 -07:00
Chris Robinson
720bedb455 Make optional more trivial when possible 2021-10-08 18:08:48 -07:00
Chris Robinson
e3b8f8fe27 Make a construct_at method amd use it 2021-10-08 11:05:36 -07:00
Chris Robinson
440b59704c Fix al::optional operator* 2021-07-31 14:21:46 -07:00
Chris Robinson
b99adb623d Remove the invalid noexcept specification 2021-01-08 19:23:17 -08:00
Chris Robinson
1f51de9983 Make optional trivially destructible if the stored type is 2021-01-02 14:24:53 -08:00
Chris Robinson
d6495b35df Fix comment typo 2021-01-01 15:35:46 -08:00
Chris Robinson
4c0f77c13e Remove some unnecessary constructors 2020-12-27 06:43:59 -08:00
Chris Robinson
46234171d1 Clean up some C++11-isms 2020-03-22 21:15:12 -07:00
Chris Robinson
b9daffe159 Don't clean up more than necessary on destruction 2019-09-20 10:58:29 -07:00
Chris Robinson
f0408809d6 Cleanup common sources' includes 2019-07-29 09:29:35 -07:00
Chris Robinson
bc1d058d2d Add a helper to construct the optional value 2019-07-01 17:55:56 -07:00
Chris Robinson
6bb0edf0a5 Create and use a make_optional method 2019-07-01 17:25:58 -07:00
Chris Robinson
eb70171433 Add a few more constructor and assignment operators for optional 2019-07-01 16:27:49 -07:00
Chris Robinson
143ad16051 Use uninitialized_copy/move for optionals 2019-07-01 12:34:24 -07:00
Chris Robinson
871257b69e Some cleanup for optional 2019-07-01 10:44:55 -07:00
Chris Robinson
0066ac26f0 Add a missing return 2019-07-01 10:44:55 -07:00
Chris Robinson
689f70ce6d Add a simple optional<> implementation 2019-06-30 16:40:08 -07:00