Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Static Public Member Functions | List of all members
base::internal::DstRangeRelationToSrcRangeImpl< Dst, Src, Bounds, INTEGER_REPRESENTATION_SIGNED, INTEGER_REPRESENTATION_UNSIGNED, NUMERIC_RANGE_NOT_CONTAINED > Struct Template Reference

#include <safe_conversions_impl.h>

Static Public Member Functions

static constexpr RangeCheck Check (Src value)
 

Detailed Description

template<typename Dst, typename Src, template< typename > class Bounds>
struct base::internal::DstRangeRelationToSrcRangeImpl< Dst, Src, Bounds, INTEGER_REPRESENTATION_SIGNED, INTEGER_REPRESENTATION_UNSIGNED, NUMERIC_RANGE_NOT_CONTAINED >

Definition at line 352 of file safe_conversions_impl.h.

Member Function Documentation

◆ Check()

template<typename Dst , typename Src , template< typename > class Bounds>
static constexpr RangeCheck base::internal::DstRangeRelationToSrcRangeImpl< Dst, Src, Bounds, INTEGER_REPRESENTATION_SIGNED, INTEGER_REPRESENTATION_UNSIGNED, NUMERIC_RANGE_NOT_CONTAINED >::Check ( Src  value)
inlinestaticconstexpr

Definition at line 358 of file safe_conversions_impl.h.

358 {
359 using DstLimits = NarrowingRange<Dst, Src, Bounds>;
360 using Promotion = decltype(Src() + Dst());
361 return RangeCheck(DstLimits::lowest() <= Dst(0) ||
362 static_cast<Promotion>(value) >=
363 static_cast<Promotion>(DstLimits::lowest()),
364 static_cast<Promotion>(value) <=
365 static_cast<Promotion>(DstLimits::max()));
366 }

The documentation for this struct was generated from the following file: