8#include "Arp/System/Core/TypeName.hxx"
28template<
class T =
void>
66 operator const String& (void)
const;
68 operator const char*(void)
const;
78 : Value(
TypeName<T>().GetCommonName())
97 return this->Value.CStr();
109 return __Internal::TypeNameHelper::GetNamespace(this->Value,
true);
115 return __Internal::TypeNameHelper::GetClassName(this->Value,
true);
138 return GetFrom(&instance);
static CommonTypeName< T2 > GetFrom(T2 &instance)
Creates the CommonTypeName from the as argument passed variable.
Definition: CommonTypeName.hxx:136
static CommonTypeName< T2 > GetFrom(T2 *pInstance)
Creates the CommonTypeName from the as argument passed variable pointer.
Definition: CommonTypeName.hxx:146
This (meta programming) class provides the typename according the CLS (common language specification)...
Definition: CommonTypeName.hxx:30
CommonTypeName(void)
Constructs a CommonTypeName instance and determines the typename of the of T.
Definition: CommonTypeName.hxx:77
CommonTypeName & operator=(const CommonTypeName &arg)=default
The default assignment operator.
~CommonTypeName(void)=default
The default destructor..
String GetClassName(void) const
Gets the classname of the as template parameter given type.
Definition: CommonTypeName.hxx:113
String Value
The CLS typename of the as template argument passed type.
Definition: CommonTypeName.hxx:62
String GetFullName(void) const
Gets the full typename of this instance.
Definition: CommonTypeName.hxx:101
String GetNamespace(void) const
Gets the namespace of the as template parameter given type.
Definition: CommonTypeName.hxx:107
CommonTypeName(const CommonTypeName &arg)=default
The default copy constructor.
CommonTypeName(CommonTypeName &&arg) noexcept=default
The default move constructor.
This (meta programming) class provides the C++ typename of the as template argument passed type.
Definition: TypeName.hxx:67
String GetCommonName(void) const
Gets the common name of the as template parameter given type according to the CLS.
Definition: TypeName.hxx:156
Root namespace for the PLCnext API