ttg 1.0.0
Template Task Graph (TTG): flowgraph-based programming model for high-performance distributed-memory algorithms
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Variables
qualifier_flags.hpp File Reference
#include <boost/callable_traits/detail/config.hpp>
Include dependency graph for qualifier_flags.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  boost::callable_traits::detail::flag_map< T >
 
struct  boost::callable_traits::detail::flag_map< T & >
 
struct  boost::callable_traits::detail::flag_map< T && >
 
struct  boost::callable_traits::detail::flag_map< T const >
 
struct  boost::callable_traits::detail::flag_map< T const & >
 
struct  boost::callable_traits::detail::flag_map< T const && >
 
struct  boost::callable_traits::detail::flag_map< T volatile >
 
struct  boost::callable_traits::detail::flag_map< T volatile & >
 
struct  boost::callable_traits::detail::flag_map< T volatile && >
 
struct  boost::callable_traits::detail::flag_map< T const volatile >
 
struct  boost::callable_traits::detail::flag_map< T const volatile & >
 
struct  boost::callable_traits::detail::flag_map< T const volatile && >
 

Namespaces

namespace  boost
 
namespace  boost::callable_traits
 
namespace  boost::callable_traits::detail
 

Typedefs

using boost::callable_traits::detail::qualifier_flags = std::uint32_t
 
template<qualifier_flags Flags>
using boost::callable_traits::detail::remove_const_flag = std::integral_constant< qualifier_flags, Flags &~const_ >
 
template<qualifier_flags Flags>
using boost::callable_traits::detail::is_const = std::integral_constant< bool,(Flags &const_) !=0 >
 
template<qualifier_flags Flags>
using boost::callable_traits::detail::remove_volatile_flag = std::integral_constant< qualifier_flags, Flags &~volatile_ >
 
template<typename U , typename T = typename std::remove_reference<U>::type>
using boost::callable_traits::detail::cv_of = std::integral_constant< qualifier_flags,(std::is_const< T >::value ? const_ :default_)|(std::is_volatile< T >::value ? volatile_ :default_)>
 
template<typename T >
using boost::callable_traits::detail::ref_of = std::integral_constant< qualifier_flags, std::is_rvalue_reference< T >::value ? rref_ :(std::is_lvalue_reference< T >::value ? lref_ :default_)>
 
template<qualifier_flags Existing, qualifier_flags Other, bool AlreadyHasRef = (Existing & (lref_ | rref_)) != 0, bool AlreadyHasLRef = (Existing & lref_) == lref_, bool IsAddingLRef = (Other & lref_) == lref_>
using boost::callable_traits::detail::collapse_flags = std::integral_constant< qualifier_flags, !AlreadyHasRef ?(Existing|Other) :(AlreadyHasLRef ?(Existing|(Other &~rref_)) :(IsAddingLRef ?((Existing &~rref_)|Other) :(Existing|Other)))>
 

Variables

constexpr qualifier_flags boost::callable_traits::detail::default_ = 0
 
constexpr qualifier_flags boost::callable_traits::detail::const_ = 1
 
constexpr qualifier_flags boost::callable_traits::detail::volatile_ = 2
 
constexpr qualifier_flags boost::callable_traits::detail::lref_ = 4
 
constexpr qualifier_flags boost::callable_traits::detail::rref_ = 8
 
constexpr qualifier_flags boost::callable_traits::detail::cv_ = 3