iceoryx2
C++ Language Bindings
Loading...
Searching...
No Matches
type_traits.hpp File Reference
#include <cstdint>
#include <type_traits>

Go to the source code of this file.

Classes

struct  iox2::legacy::add_const_conditionally< T, C >
 Conditionally add const to type T if C has the const qualifier. More...
 
struct  iox2::legacy::add_const_conditionally< T, const C >
 
struct  iox2::legacy::is_invocable< Callable, ArgTypes >
 Verifies whether the passed Callable type is in fact invocable with the given arguments. More...
 
struct  iox2::legacy::is_invocable_r< ReturnType, Callable, ArgTypes >
 Verifies whether the passed Callable type is in fact invocable with the given arguments and the result of the invocation is convertible to ReturnType. More...
 
struct  iox2::legacy::is_function_pointer< T >
 Check whether T is a function pointer with arbitrary signature. More...
 
struct  iox2::legacy::is_function_pointer< ReturnType(*)(ArgTypes...)>
 
struct  iox2::legacy::is_char_array< T >
 struct to check whether an argument is a char array More...
 
struct  iox2::legacy::is_char_array< char[N]>
 
struct  iox2::legacy::negation< B >
 Implementation of C++17 negation. More...
 
struct  iox2::legacy::bool_pack<... >
 
struct  iox2::legacy::conjunction<... >
 Implementation of C++17 std::conjunction. More...
 
struct  iox2::legacy::conjunction< Arg >
 
struct  iox2::legacy::conjunction< Arg, Args... >
 
struct  iox2::legacy::remove_cvref< T >
 Implementation of C++20's std::remove_cvref. More...
 

Namespaces

namespace  iox2
 
namespace  iox2::legacy
 

Typedefs

template<typename T , typename C >
using iox2::legacy::add_const_conditionally_t = typename add_const_conditionally< T, C >::type
 Helper type for add_const_conditionally which adds const to type T if C has the const qualifier.
 
template<typename C , typename... Cargs>
using iox2::legacy::invoke_result = std::result_of< C(Cargs...)>
 
template<typename... >
using iox2::legacy::void_t = void
 Maps a sequence of any types to the type void.
 
template<bool B>
using iox2::legacy::bool_constant = std::integral_constant< bool, B >
 Implementation C++17 bool_constant helper.
 
template<typename T >
using iox2::legacy::remove_cvref_t = typename remove_cvref< T >::type_t
 Implementation of C++20's std::remove_cvref_t.
 
template<typename T >
using iox2::legacy::is_c_array_t = std::is_array< std::remove_reference_t< T > >
 
template<typename T >
using iox2::legacy::is_not_c_array_t = iox2::legacy::negation< is_c_array_t< T > >
 
template<typename From , typename To >
using iox2::legacy::is_convertible_t = std::is_convertible< From(*)[], To(*)[]>
 
template<typename Iter >
using iox2::legacy::iter_reference_t = decltype(*std::declval< Iter & >())
 
template<typename Iter , typename T >
using iox2::legacy::iter_has_convertible_ref_type_t = iox2::legacy::is_convertible_t< std::remove_reference_t< iter_reference_t< Iter > >, T >
 

Variables

template<typename >
constexpr bool iox2::legacy::always_false_v { false }
 Helper value to bind a static_assert to a type.
 
template<class From , class To >
constexpr bool iox2::legacy::is_convertible_v = std::is_convertible<From, To>::value
 Helper template from C++17.