This repository was archived by the owner on Jun 3, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 4
This repository was archived by the owner on Jun 3, 2018. It is now read-only.
Update expected-lite to proposal p0323r6 (was 5) #20
Copy link
Copy link
Open
Milestone
Description
Update expected-lite to proposal p0323r5 p0323r6.
Provide (some) backward compatibility through CMake variable EXPECTED_P0323R.
See also issues:
- operator== Missing for void specialization, issue operator== Missing for void specialization #29.
Plan:
unexpected[_type]<E>:
- constructors
- destructor (not specified)
- assignment
- swap
- observers
- relational operators: deprecate less-than comparable (provide for EXPECTED_P0323R<= 2)
- remove default template parameter std::exception_ptr (provide for EXPECTED_P0323R<= 2)
- remove unexpected[_type]<std::exception_ptr> specialisation (provide for EXPECTED_P0323R<= 2)
- alias unexpected_type<E> to unexpected<E> for C++17, however
not for MSVC <= 14.1 due to clash with unexpected()
unexpecttag:
- struct unexpect_t
- object unexpect (now inline for C++17)
- in_place_unexpected_t kept as alias of unexpect_t
- object in_place_unexpected kept (now inline for C++17)
bad_expected_access:
- bad_expected_access<T>
- bad_expected_access<void>
expected<T,E>:
- constructors
- destructor
- assignment
- swap
- observers
- relational operators: deprecate less-than comparable (provide for EXPECTED_P0323R<= 2)
- comparison with T: deprecate less-than comparable (provide for EXPECTED_P0323R<= 2)
- comparison with unexpected[_type]<E>: deprecate less-than comparable (provide for EXPECTED_P0323R<= 2)
- specialised algorithms
- remove default template parameter std::exception_ptr (provide for EXPECTED_P0323R<= 2)
- Traits:
- is_unexpected<> (not in propsal; provide for EXPECTED_P0323R <= 3)
- error_traits<E> (not in propsal; provide for EXPECTED_P0323R <= 3)
- expected_traits<T,E> (not present in expected-lite; removed from proposal in r4)
- Factory functions
- make_expected, deprecate, not useful with two template argument to specify
- make_unexpected, keep
- Test specification
- Test for all values of
nsel_P0323R - Identify missing tests
- Add missing tests
- Update documentation
- Readme
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels