OSVR-Core  0.6-1962-g59773924
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
TypeKeyed.h File Reference

Header. More...

#include "Contains.h"
#include "FindFirst.h"
#include "T.h"
#include <tuple>
#include <type_traits>

Go to the source code of this file.

Classes

class  osvr::typepack::TypeKeyedBase< Derived >
 
struct  osvr::typepack::typekeyed_detail::ValueTypeAtKeyTraits< Derived, Key >
 
struct  osvr::typepack::typekeyed_detail::KeyTypesTraits< Derived >
 
struct  osvr::typepack::typekeyed_detail::ValueAccessor< Derived, Key >
 
class  osvr::typepack::TypeKeyedBase< Derived >
 

Namespaces

 osvr
 The main namespace for all C++ elements of the framework, internal and external.
 
 osvr::typepack
 A simple argument-pack-based metaprogramming library, inspired by and based partially on https://ericniebler.github.io/meta.
 

Typedefs

template<typename Derived >
using osvr::typepack::typekeyed_detail::key_types = t_< KeyTypesTraits< Derived >>
 
template<typename Derived , typename Key >
using osvr::typepack::typekeyed_detail::valid_key = contains< key_types< Derived >, Key >
 
template<typename Derived , typename Key >
using osvr::typepack::typekeyed_detail::index = find_first< key_types< Derived >, Key >
 
template<typename Derived , typename Key >
using osvr::typepack::typekeyed_detail::value_type_at_key = t_< ValueTypeAtKeyTraits< Derived, Key >>
 
template<typename Derived , typename Key >
using osvr::typepack::typekeyed_detail::ref_type_at_key = std::add_lvalue_reference< value_type_at_key< Derived, Key >>
 
template<typename Derived , typename Key >
using osvr::typepack::typekeyed_detail::rref_type_at_key = std::add_rvalue_reference< value_type_at_key< Derived, Key >>
 
template<typename Derived , typename Key >
using osvr::typepack::typekeyed_detail::cref_type_at_key = std::add_lvalue_reference< t_< std::add_const< value_type_at_key< Derived, Key >>>>
 

Detailed Description

Header.

Date
2015
Author
Sensics, Inc. http://sensics.com/osvr

Definition in file TypeKeyed.h.