MRPT  2.0.0
Classes | Namespaces
TTypeName_stl.h File Reference
#include <mrpt/typemeta/TTypeName.h>
#include <mrpt/typemeta/num_to_string.h>
#include <mrpt/typemeta/static_string.h>
#include <array>
#include <chrono>
#include <deque>
#include <list>
#include <map>
#include <set>
#include <vector>
Include dependency graph for TTypeName_stl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  mrpt::typemeta::TTypeName< std::pair< T1, T2 > >
 
struct  mrpt::typemeta::TTypeName< std::chrono::time_point< T > >
 

Namespaces

 mrpt::typemeta
 

Macros

Conversion of type to string at compile time
#define MRPT_DECLARE_TTYPENAME_CONTAINER(_CONTAINER)
 
#define MRPT_DECLARE_TTYPENAME_CONTAINER_FIX_SIZE(_CONTAINER)
 
#define MRPT_DECLARE_TTYPENAME_CONTAINER_ASSOC(_CONTAINER)
 

Macro Definition Documentation

◆ MRPT_DECLARE_TTYPENAME_CONTAINER

#define MRPT_DECLARE_TTYPENAME_CONTAINER (   _CONTAINER)
Value:
template <typename V> \
struct TTypeName<_CONTAINER<V>> \
{ \
constexpr static auto get() \
{ \
return literal(#_CONTAINER) + literal("<") + TTypeName<V>::get() + \
literal(">"); \
} \
};
constexpr auto literal(const char(&lit)[N_PLUS_1]) -> string_literal< N_PLUS_1 - 1 >
Definition: static_string.h:46

Definition at line 31 of file TTypeName_stl.h.

◆ MRPT_DECLARE_TTYPENAME_CONTAINER_ASSOC

#define MRPT_DECLARE_TTYPENAME_CONTAINER_ASSOC (   _CONTAINER)
Value:
template <typename K, typename V> \
struct TTypeName<_CONTAINER<K, V>> \
{ \
constexpr static auto get() \
{ \
return literal(#_CONTAINER) + literal("<") + TTypeName<K>::get() + \
literal(",") + TTypeName<V>::get() + literal(">"); \
} \
};
constexpr auto literal(const char(&lit)[N_PLUS_1]) -> string_literal< N_PLUS_1 - 1 >
Definition: static_string.h:46

Definition at line 62 of file TTypeName_stl.h.

◆ MRPT_DECLARE_TTYPENAME_CONTAINER_FIX_SIZE

#define MRPT_DECLARE_TTYPENAME_CONTAINER_FIX_SIZE (   _CONTAINER)
Value:
template <typename V, std::size_t N> \
struct TTypeName<_CONTAINER<V, N>> \
{ \
constexpr static auto get() \
{ \
return literal(#_CONTAINER) + literal("<") + TTypeName<V>::get() + \
literal(",") + literal(num_to_string<N>::value) + \
literal(">"); \
} \
};
constexpr auto literal(const char(&lit)[N_PLUS_1]) -> string_literal< N_PLUS_1 - 1 >
Definition: static_string.h:46

Definition at line 48 of file TTypeName_stl.h.




Page generated by Doxygen 1.8.14 for MRPT 2.0.0 Git: b38439d21 Tue Mar 31 19:58:06 2020 +0200 at miƩ abr 1 00:50:30 CEST 2020