type_traits.hpp File Reference

type_traits.hpp File Reference#

Composable Kernel: type_traits.hpp File Reference
type_traits.hpp File Reference
#include "ck_tile/core/config.hpp"
#include <tuple>
#include <type_traits>
#include <stdint.h>

Go to the source code of this file.

Classes

struct  ck_tile::copy_const< From, To >
struct  ck_tile::copy_const< const From, To >
struct  ck_tile::detail::detector< Default, AlwaysVoid, Op, Args >
struct  ck_tile::detail::detector< Default, std::void_t< Op< Args... > >, Op, Args... >
struct  ck_tile::nonesuch
struct  ck_tile::impl::is_static_impl< T >
struct  ck_tile::is_any_of< CompareTo, Rest >
struct  ck_tile::is_any_of< CompareTo, FirstType >
struct  ck_tile::is_any_of< CompareTo, FirstType, Rest... >
struct  ck_tile::is_specialization_of< Test, RefTemplate >
struct  ck_tile::is_specialization_of< RefTemplate< Args... >, RefTemplate >
struct  ck_tile::detail::tuple_element_or_default_dispatch< IsWithinBounds, Idx, Tuple, DefaultType >
struct  ck_tile::detail::tuple_element_or_default_dispatch< true, Idx, Tuple, DefaultType >
struct  ck_tile::tuple_element_or_default< Tuple_, Idx, DefaultType >

Namespaces

namespace  ck_tile
namespace  ck_tile::detail
namespace  ck_tile::impl

Typedefs

template<typename T>
using ck_tile::remove_reference_t = typename std::remove_reference<T>::type
template<typename T>
using ck_tile::remove_cv_t = typename std::remove_cv<T>::type
template<typename T>
using ck_tile::remove_cvref_t = remove_cv_t<std::remove_reference_t<T>>
template<typename T>
using ck_tile::remove_pointer_t = typename std::remove_pointer<T>::type
template<typename From, typename To>
using ck_tile::copy_const_t = typename copy_const<From, To>::type
template<template< class... > class Op, class... Args>
using ck_tile::is_detected = typename detail::detector<nonesuch, void, Op, Args...>::value_t
template<typename T>
using ck_tile::impl::has_is_static = decltype(T::is_static())
template<typename T>
using ck_tile::is_static = impl::is_static_impl<remove_cvref_t<T>>
template<typename T>
using ck_tile::is_known_at_compile_time = is_static<T>
template<typename Tuple_, std::size_t Idx, typename DefaultType>
using ck_tile::tuple_element_or_default_t

Functions

template<typename PY, typename PX, typename std::enable_if< std::is_pointer_v< PY > &&std::is_pointer_v< PX >, bool >::type = false>
CK_TILE_HOST_DEVICE PY ck_tile::c_style_pointer_cast (PX p_x)

Variables

template<typename T>
constexpr bool ck_tile::is_static_v = is_static<T>::value