Skip to content

Commit 652c275

Browse files
committed
P1048R1 A proposal for a type trait to detect scoped enumerations
1 parent 8131f4c commit 652c275

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

source/support.tex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -630,6 +630,7 @@
630630
#define @\defnlibxname{cpp_lib_is_nothrow_convertible}@ 201806L // also in \libheader{type_traits}
631631
#define @\defnlibxname{cpp_lib_is_null_pointer}@ 201309L // also in \libheader{type_traits}
632632
#define @\defnlibxname{cpp_lib_is_pointer_interconvertible}@ 201907L // also in \libheader{type_traits}
633+
#define @\defnlibxname{cpp_lib_is_scoped_enum}@ 202011L // also in \libheader{type_traits}
633634
#define @\defnlibxname{cpp_lib_is_swappable}@ 201603L // also in \libheader{type_traits}
634635
#define @\defnlibxname{cpp_lib_jthread}@ 201911L // also in \libheader{stop_token}, \libheader{thread}
635636
#define @\defnlibxname{cpp_lib_latch}@ 201907L // also in \libheader{latch}

source/utilities.tex

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15960,6 +15960,7 @@
1596015960
template<class T> struct is_unsigned;
1596115961
template<class T> struct is_bounded_array;
1596215962
template<class T> struct is_unbounded_array;
15963+
template<class T> struct is_scoped_enum;
1596315964

1596415965
template<class T, class... Args> struct is_constructible;
1596515966
template<class T> struct is_default_constructible;
@@ -16209,6 +16210,8 @@
1620916210
inline constexpr bool @\libglobal{is_bounded_array_v}@ = is_bounded_array<T>::value;
1621016211
template<class T>
1621116212
inline constexpr bool @\libglobal{is_unbounded_array_v}@ = is_unbounded_array<T>::value;
16213+
template<class T>
16214+
inline constexpr bool @\libglobal{is_scoped_enum_v}@ = is_scoped_enum<T>::value;
1621216215
template<class T, class... Args>
1621316216
inline constexpr bool @\libglobal{is_constructible_v}@ = is_constructible<T, Args...>::value;
1621416217
template<class T>
@@ -16641,6 +16644,12 @@
1664116644
\tcode{T} is an array type of unknown bound\iref{dcl.array}
1664216645
& \\ \rowsep
1664316646

16647+
\indexlibraryglobal{is_scoped_enum}%
16648+
\tcode{template<class T>}\br
16649+
\tcode{struct is_scoped_enum;} &
16650+
\tcode{T} is a scoped enumeration\iref{dcl.enum}
16651+
& \\ \rowsep
16652+
1664416653
\indexlibraryglobal{is_constructible}%
1664516654
\tcode{template<class T, class... Args>}\br
1664616655
\tcode{struct is_constructible;} &

0 commit comments

Comments
 (0)