pub enum CppMapping {
Native,
Psm,
Classic,
}Expand description
How the C++ column spells topic types.
CppMapping::Psm is the default: the mapping DDS-PSM-Cxx 1.0 §7.4 and §8.1 ask for —
classes with accessors, dds::core::optional, dds::core::array, wchar_t, std::wstring,
long double, std::map. It is a layer over the native types and not a second codec: the
native types move into the namespace NATIVE_NAMESPACE, the PSM types take the names of the
IDL, and zerodds::psm::Conv converts between them on the way into the codec and out of it.
CppMapping::Native is the named option that the wire codec, the endpoint gates and every
other consumer of the shape of a generated header ask for explicitly: structures with public
fields, a plain pointer for @optional, std::array, a map as a vector of pairs.
Variants§
Native
Public fields, the types the codec reads and writes (--cpp-mapping native).
Psm
DDS-PSM-Cxx 1.0 §7.4 and §8.1, over the native types (the default).
Classic
The classic OMG IDL to C++ 1.3 mapping, in C++03, over the native types
(see super::cpp_classic).