v1.1.0
Major changes:
- Introduced customization point
tiny::optional_flag_manipulator
, which allows the user to teachtiny::optional<PayloadType>
about a custom "flag manipulator" for some custom typePayloadType
. If available,tiny::optional<PayloadType>
will always have the same size as thePayloadType
. Hence, to support custom types, it is no longer necessary to usetiny::optional_inplace
(although still possible). See the readme for more information. This has been suggested in issue #3. - Breaking Change in the API of
tiny::optional_inplace
: The flag manipulator's functions were renamed fromIsEmpty()
,InitializeIsEmptyFlag()
andPrepareIsEmptyFlagForPayload()
tois_empty()
,init_empty_flag()
andinvalidate_empty_flag()
. This was done to make the naming more consistent (since the whole public API uses snake_case names becausestd::optional
does). Their arguments, return values or semantics did not change.
Full Changelog: v1.0.0...v1.1.0