Specify assign in terms of construction and assignment

This commit is contained in:
Peter Dimov
2021-09-16 18:13:55 +03:00
parent 984f8f1a92
commit 6156076dab

View File

@@ -721,7 +721,7 @@ constexpr void assign( int val, const error_category & cat ) noexcept;
[none] [none]
* {blank} * {blank}
+ +
Ensures: :: `value() == val`; `category() == cat`; `!has_location()`. Effects: :: `*this = error_code( val, cat );`.
``` ```
void assign( int val, const error_category & cat, void assign( int val, const error_category & cat,
@@ -730,8 +730,7 @@ void assign( int val, const error_category & cat,
[none] [none]
* {blank} * {blank}
+ +
Requires: :: `loc` points to a valid `boost::source_location` object with static storage duration. Effects: :: `*this = error_code( val, cat, loc );`.
Ensures: :: `value() == val`; `category() == cat`; `has_location()`; `&location() == loc`.
``` ```
template<typename ErrorCodeEnum> template<typename ErrorCodeEnum>
@@ -749,8 +748,8 @@ constexpr void clear() noexcept;
[none] [none]
* {blank} * {blank}
+ +
Ensures: :: Effects: ::
`value() == 0`; `category() == system_category()`. `*this = error_code();`.
#### Observers #### Observers