Adapts shared tests and common code to generated rtiddsgen API
Updates test suites and Lts/Common consumers to plain member access.
This commit is contained in:
41 files changed
+1076
-235
No files matched your search
@@ -874,6 +874,13 @@ bool StructBuilder::fixupQVariantConversions(MemberInformation& mi) const
|
||||
datatype == QLatin1String("long long"))
|
||||
{
|
||||
mi.cpp.type = QStringLiteral("qint64");
|
||||
// IDL `long long` is int64_t (long) in the rtiddsgen 4.7 output, while the Qt side is
|
||||
// qint64 (long long). Those are distinct types, so assignments such as
|
||||
// `optional<int64_t> = optional<qint64>` do not compile. Carry the generated type
|
||||
// separately, as the sequence<octet> branch below already does, so the DDS-facing code
|
||||
// emitted from cppDdsType() names the type the struct member really has. The spelling
|
||||
// is the one rtiddsgen itself writes, matching what the `long` branch does with int32_t.
|
||||
mi.cpp.ddsType = QStringLiteral("int64_t");
|
||||
mi.cpp.fromVariantPost = QStringLiteral(".toLongLong()");
|
||||
mi.cpp.fromJsonPost = QStringLiteral(".toDouble()");
|
||||
mi.cpp.toJsonPre = QStringLiteral("static_cast<qint64>(");
|
||||
@@ -1039,7 +1046,7 @@ QVector<MemberInformation> StructBuilder::buildDbTableInformationFromIdlData(con
|
||||
pre += columnNamePrefix;
|
||||
pre += member.name + QLatin1Char('_');
|
||||
ret += buildDbTableInformationFromIdlData(cttiChild, tableName, StructBuilder::camelCaseToUnderline(pre),
|
||||
cppStructure + member.name + QStringLiteral("()."));
|
||||
cppStructure + member.name + QStringLiteral("."));
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user