diff options
author | Lutz Bichler <Lutz.Bichler@bmw.de> | 2015-06-17 11:29:46 +0200 |
---|---|---|
committer | Lutz Bichler <Lutz.Bichler@bmw.de> | 2015-06-17 11:29:46 +0200 |
commit | c52b2b094ef5844c182f097b14923764758dfe80 (patch) | |
tree | f4e0446c1f8411dca5336884e2bc10a820ef8722 /include/CommonAPI/Variant.hpp | |
parent | 6c463fcc3dcee619925f08ea09e19a86b9e581cc (diff) | |
download | genivi-common-api-runtime-c52b2b094ef5844c182f097b14923764758dfe80.tar.gz |
CommonAPI 3.1.2
Diffstat (limited to 'include/CommonAPI/Variant.hpp')
-rw-r--r-- | include/CommonAPI/Variant.hpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/include/CommonAPI/Variant.hpp b/include/CommonAPI/Variant.hpp index d7b1088..7af1b81 100644 --- a/include/CommonAPI/Variant.hpp +++ b/include/CommonAPI/Variant.hpp @@ -516,6 +516,27 @@ struct TypeSelector<_Type> { }; template<typename _Type, typename... _Types> +struct TypeSelector<typename _Type::Literal, _Type, _Types...> { + typedef _Type type; +}; + +template<typename _Type, typename... _Types> +struct TypeSelector<typename _Type::Literal &, _Type, _Types...> { + typedef _Type type; +}; + + +template<typename _Type, typename... _Types> +struct TypeSelector<typename _Type::Literal, const _Type&, _Types...> { + typedef _Type type; +}; + +template<typename _Type, typename... _Types> +struct TypeSelector<const typename _Type::Literal &, _Type, _Types...> { + typedef _Type type; +}; + +template<typename _Type, typename... _Types> struct TypeSelector<_Type, _Type, _Types...> { typedef _Type type; }; |