Line | Branch | Exec | Source |
---|---|---|---|
1 | /*************************************** | ||
2 | Auteur : Pierre Aubert | ||
3 | Mail : pierre.aubert@lapp.in2p3.fr | ||
4 | Licence : CeCILL-C | ||
5 | ****************************************/ | ||
6 | |||
7 | #ifndef __PHOENIX_COMPOSETYPE_IMPL_H__ | ||
8 | #define __PHOENIX_COMPOSETYPE_IMPL_H__ | ||
9 | |||
10 | #include "phoenix_composeType.h" | ||
11 | |||
12 | ///Get the corresponding type of a string | ||
13 | /** @return corresponding string | ||
14 | */ | ||
15 | template<typename T> | ||
16 | 33 | std::string phoenix_getTypeToStr(){ | |
17 | 33 | return TypeStream<T >::getTypeToStr(); | |
18 | } | ||
19 | |||
20 | ///Get the corresponding type of a string | ||
21 | /** @param data : parameter used to get its type | ||
22 | * @return corresponding string | ||
23 | */ | ||
24 | template<typename T> | ||
25 | 10 | std::string phoenix_getTypeToStr(const T & data){ | |
26 | 10 | return phoenix_getTypeToStr<T>(); | |
27 | } | ||
28 | |||
29 | ///Convert a function prototype into a string | ||
30 | /** @param func : function to be called | ||
31 | * @return corresponding type name as string | ||
32 | */ | ||
33 | template <typename R, typename... T> | ||
34 | 4 | std::string phoenix_getTypeToStr(R (*func)(T...)){ | |
35 |
4/4✓ Branch 0 (2→3) taken 4 times.
✓ Branch 2 (3→4) taken 4 times.
✓ Branch 4 (4→5) taken 4 times.
✓ Branch 6 (5→6) taken 4 times.
|
4 | return phoenix_getTypeToStr<R>() + " | " + TypeStream<std::tuple<T... > >::getTypeToStr(); |
36 | } | ||
37 | |||
38 | |||
39 | #endif | ||
40 |