#ifndef ICE_TRAITS_H #define ICE_TRAITS_H #ifdef ICE_CPP11_MAPPING #include namespace Ice { class ObjectPrx; class Value; template using IsProxy = ::std::is_base_of<::Ice::ObjectPrx, T>; template using IsValue = ::std::is_base_of<::Ice::Value, T>; enum class Kind { Value, Proxy }; template struct TypeTraits { constexpr static bool isKind(Kind kind) { switch(kind) { case Kind::Value: { return std::is_base_of::value; } case Kind::Proxy: { return std::is_base_of::value; } default: { return false; } } } }; } #endif #endif