ArmNN
 24.02
NumericCast.hpp File Reference
#include "Assert.hpp"
#include <type_traits>
#include <limits>
Include dependency graph for NumericCast.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 armnn
 Copyright (c) 2021 ARM Limited and Contributors.
 

Macros

#define ENABLE_NUMERIC_CAST_CHECKS   1
 
#define ARMNN_NUMERIC_CAST_CHECK(cond, msg)   ARMNN_ASSERT_MSG(cond, msg)
 

Functions

template<typename Dest , typename Source >
std::enable_if_t< std::is_unsigned< Source >::value &&std::is_unsigned< Dest >::value, Dest > numeric_cast (Source source)
 
template<typename Dest , typename Source >
std::enable_if_t< std::is_signed< Source >::value &&std::is_integral< Source >::value &&std::is_signed< Dest >::value &&std::is_integral< Dest >::value, Dest > numeric_cast (Source source)
 
template<typename Dest , typename Source >
std::enable_if_t< std::is_floating_point< Source >::value &&std::is_floating_point< Dest >::value, Dest > numeric_cast (Source source)
 
template<typename Dest , typename Source >
std::enable_if_t< std::is_floating_point< Source >::value &&std::is_signed< Dest >::value &&std::is_integral< Dest >::value, Dest > numeric_cast (Source source)
 
template<typename Dest , typename Source >
std::enable_if_t< std::is_signed< Source >::value &&std::is_integral< Source >::value &&std::is_floating_point< Dest >::value, Dest > numeric_cast (Source source)
 
template<typename Dest , typename Source >
std::enable_if_t< std::is_signed< Dest >::value &&std::is_integral< Dest >::value &&std::is_unsigned< Source >::value, Dest > numeric_cast (Source sValue)
 
template<typename Dest , typename Source >
std::enable_if_t< std::is_floating_point< Dest >::value &&std::is_unsigned< Source >::value, Dest > numeric_cast (Source sValue)
 
template<typename Dest , typename Source >
std::enable_if_t< std::is_unsigned< Dest >::value &&std::is_signed< Source >::value &&std::is_integral< Source >::value, Dest > numeric_cast (Source sValue)
 
template<typename Dest , typename Source >
std::enable_if_t< std::is_unsigned< Dest >::value &&std::is_floating_point< Source >::value, Dest > numeric_cast (Source sValue)
 

Macro Definition Documentation

◆ ARMNN_NUMERIC_CAST_CHECK

#define ARMNN_NUMERIC_CAST_CHECK (   cond,
  msg 
)    ARMNN_ASSERT_MSG(cond, msg)

Definition at line 25 of file NumericCast.hpp.

◆ ENABLE_NUMERIC_CAST_CHECKS

#define ENABLE_NUMERIC_CAST_CHECKS   1

Definition at line 17 of file NumericCast.hpp.