Annotate noexcept and constexpr with HEDLEY, and add interval containment, ChaCha, and the dyadic range tables.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
875f09fec1
commit
0d8a5a8131
97 changed files with 9212 additions and 1159 deletions
|
|
@ -44,8 +44,11 @@ struct wildcard_value
|
|||
static_assert(std::numeric_limits<T>::is_iec559 ||
|
||||
!(std::is_same_v<T, float> || std::is_same_v<T, double>),
|
||||
"floating point types only supported for iec559");
|
||||
HEDLEY_NO_THROW
|
||||
inline constexpr wildcard_value() noexcept : val{std::nullopt} { }
|
||||
HEDLEY_NO_THROW
|
||||
inline constexpr wildcard_value(const T & t) noexcept : val{t} { }
|
||||
HEDLEY_NO_THROW
|
||||
inline constexpr wildcard_value(T && t) noexcept : val{std::move(t)} { }
|
||||
|
||||
HEDLEY_ALWAYS_INLINE
|
||||
|
|
@ -93,6 +96,7 @@ template <typename T> using concrete_type_t = typename concrete_type<T>::type;
|
|||
|
||||
template <typename T> struct concrete_value
|
||||
{
|
||||
HEDLEY_NO_THROW
|
||||
HEDLEY_ALWAYS_INLINE
|
||||
HEDLEY_CONST
|
||||
constexpr std::optional<T> operator()(T y) const noexcept
|
||||
|
|
@ -102,6 +106,7 @@ template <typename T> struct concrete_value
|
|||
};
|
||||
template <typename T> struct concrete_value<wildcard_value<T>>
|
||||
{
|
||||
HEDLEY_NO_THROW
|
||||
HEDLEY_ALWAYS_INLINE
|
||||
HEDLEY_CONST
|
||||
constexpr std::optional<T> operator()(wildcard_value<T>) const noexcept
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue