L4Re Operating System Framework
Interface and Usage Documentation
Loading...
Searching...
No Matches
types File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  L4::Types::Flags< BITS_ENUM, UNDERLYING >
 Template for defining typical Flags bitmaps. More...
struct  L4::Types::Int_for_type< T >
 Metafunction to get an integral type of the same size as T. More...
struct  L4::Types::Flags_ops_t< DT >
 Mixin class to define a set of friend bitwise operators on DT. More...
struct  L4::Types::Flags_t< DT, T >
 Template type to define a flags type with bitwise operations. More...
struct  L4::Types::__Add_rvalue_reference_helper< T, typename >
 Helper template for Add_rvalue_reference. More...
struct  L4::Types::__Add_rvalue_reference_helper< T, Void< T && > >
 Helper template for Add_rvalue_reference. More...
struct  L4::Types::Add_rvalue_reference< T >
 Create an rvalue reference of the given type. More...
struct  L4::Types::Bool< V >
 Boolean meta type. More...
struct  L4::Types::False
 False meta value. More...
struct  L4::Types::True
 True meta value. More...
struct  L4::Types::Integral_constant< T, Value >
 Wrapper for a static constant of the given type. More...
struct  L4::Types::Is_enum< T >
 Check whether the given type is an enumeration type. More...
struct  L4::Types::__Underlying_type_helper< T, bool >
 Helper template for Underlying_type. More...
struct  L4::Types::__Underlying_type_helper< T, false >
 Helper template for Underlying_type. More...
struct  L4::Types::Underlying_type< T >
 Get an underlying type of an enumeration type. More...
struct  L4::Types::Same< A, B >
 Compare two data types for equality. More...
struct  Enum_bitops::Has_marker< typename, typename >
 Marker for the opt-in ADL function. More...
struct  Enum_bitops::Has_marker< T, Void< decltype(enum_bitops_enable(declval< T >()))> >
 Marker for the opt-in ADL function. More...
struct  Enum_bitops::Enable< T >
 Check whether the given enum type opts in for the bitwise operators. More...

Namespaces

namespace  L4
 L4 low-level kernel interface.
namespace  L4::Types
 L4 basic type helpers for C++.
namespace  Enum_bitops
 Mechanism to opt-in for enum bitwise operators.
namespace  Enum_bitops_impl
 Bitwise operators on enumeration types.

Typedefs

template<typename...>
using L4::Types::Void = void
 Map a sequence of any types to the void type.
template<typename T>
using L4::Types::Add_rvalue_reference_t = typename Add_rvalue_reference<T>::type
 Helper type for the Add_rvalue_reference.
template<typename T>
using L4::Types::Underlying_type_t = typename Underlying_type<T>::type
 Helper type for Underlying_type.
template<bool Condition, typename T = void>
using L4::Types::Enable_if_t = typename Enable_if<Condition, T>::type
 Helper type for Enable_if.

Functions

template<typename T>
Add_rvalue_reference_t< T > L4::Types::declval () noexcept
 Template for writing typed expressions in unevaluated contexts.
template<typename T, typename = L4::Types::Enable_if_t<L4::Types::Is_enum<T>::value>>
constexpr L4::Types::Underlying_type_t< T > Enum_bitops_impl::to_underlying (T const arg) noexcept
 Convert enum value to its underlying type value.
template<typename T, typename = L4::Types::Enable_if_t<Enum_bitops::Enable<T>::value>>
constexpr T Enum_bitops_impl::operator~ (T const a) noexcept
 Negate enum value.
template<typename T, typename = L4::Types::Enable_if_t<Enum_bitops::Enable<T>::value>>
constexpr T Enum_bitops_impl::operator& (T l, T r) noexcept
 Intersect enum values.
template<typename T, typename = L4::Types::Enable_if_t<Enum_bitops::Enable<T>::value>>
constexpr T & Enum_bitops_impl::operator&= (T &a, T const b) noexcept
 Intersect and assign enum values.
template<typename T, typename = L4::Types::Enable_if_t<Enum_bitops::Enable<T>::value>>
constexpr T Enum_bitops_impl::operator| (T l, T r) noexcept
 Union enum values.
template<typename T, typename = L4::Types::Enable_if_t<Enum_bitops::Enable<T>::value>>
constexpr T & Enum_bitops_impl::operator|= (T &a, T const b) noexcept
 Union and assign enum values.
template<typename T, typename = L4::Types::Enable_if_t<Enum_bitops::Enable<T>::value>>
constexpr T Enum_bitops_impl::operator- (T l, T r) noexcept
 Difference (intersect with negation, clear bits) enum values.
template<typename T, typename = L4::Types::Enable_if_t<Enum_bitops::Enable<T>::value>>
constexpr T & Enum_bitops_impl::operator-= (T &a, T const b) noexcept
 Difference (intersect with negation, clear bits) and assign enum values.