Support creating util::flag_set directly from representation type
This commit is contained in:
parent
98b8a324d0
commit
ddd67b79f3
1 changed files with 5 additions and 1 deletions
|
|
@ -19,7 +19,11 @@ namespace psemek::util
|
|||
|
||||
flag_set(flag_set const &) = default;
|
||||
|
||||
template <typename ... Flags>
|
||||
flag_set(Repr const & repr)
|
||||
: value(repr)
|
||||
{}
|
||||
|
||||
template <typename ... Flags, typename = std::enable_if_t<(std::is_same_v<Flags, Flag> && ...), void>>
|
||||
flag_set(Flags const & ... flags)
|
||||
: value{((1 << static_cast<underlying_type>(flags)) | ...)}
|
||||
{}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue