TetraIF migration and Unittest Implementation for it
Entire-Checkpoint: 14d1fef0cf36
This commit is contained in:
1 parent
a86f9b5bac
commit
ba212f9dce
78 files changed
+1611
-640
No files matched your search
@@ -37,6 +37,7 @@ LogViewXdrParser::LogViewXdrParser()
|
||||
, m_WordListIndex(0)
|
||||
, m_ActElement(nullptr)
|
||||
, m_State(e_ParseMain)
|
||||
, m_logger(getLogger("LogViewXdrParser"))
|
||||
{}
|
||||
|
||||
LogViewXdrParser::~LogViewXdrParser()
|
||||
@@ -73,41 +74,41 @@ void LogViewXdrParser::parseX_File(const QString& a_fileName)
|
||||
m_State = e_ParseMain;
|
||||
|
||||
|
||||
addStandardType(QLatin1String("unsigned short"), 4, 2, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QLatin1String("unsigned int"), 4, 4, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QLatin1String("short"), 4, 2, LogViewXdrStandardType::e_Signed);
|
||||
addStandardType(QLatin1String("int"), 4, 4, LogViewXdrStandardType::e_Signed);
|
||||
addStandardType(QLatin1String("u_int"), 4, 4, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QLatin1String("char"), 4, 2, LogViewXdrStandardType::e_Character);
|
||||
addStandardType(QLatin1String("unsigned char"), 4, 1, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QLatin1String("unsigned long"), 4, 4, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QLatin1String("u_long"), 4, 4, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QLatin1String("u_short"), 4, 2, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QLatin1String("float"), 4, 4, LogViewXdrStandardType::e_Float, LogViewXdrStandardType::e_DynArrayMsgLength, LogViewXdrStandardType::e_ByteOrderBigEndian);
|
||||
addStandardType(QLatin1String("double"), 8, 8, LogViewXdrStandardType::e_Float, LogViewXdrStandardType::e_DynArrayMsgLength, LogViewXdrStandardType::e_ByteOrderBigEndian);
|
||||
addStandardType(QLatin1String("opaque"), 1, 1, LogViewXdrStandardType::e_Data);
|
||||
addStandardType(QLatin1String("string"), 1, 1, LogViewXdrStandardType::e_Character);
|
||||
addStandardType(QStringLiteral("unsigned short"), 4, 2, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QStringLiteral("unsigned int"), 4, 4, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QStringLiteral("short"), 4, 2, LogViewXdrStandardType::e_Signed);
|
||||
addStandardType(QStringLiteral("int"), 4, 4, LogViewXdrStandardType::e_Signed);
|
||||
addStandardType(QStringLiteral("u_int"), 4, 4, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QStringLiteral("char"), 4, 2, LogViewXdrStandardType::e_Character);
|
||||
addStandardType(QStringLiteral("unsigned char"), 4, 1, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QStringLiteral("unsigned long"), 4, 4, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QStringLiteral("u_long"), 4, 4, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QStringLiteral("u_short"), 4, 2, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QStringLiteral("float"), 4, 4, LogViewXdrStandardType::e_Float, LogViewXdrStandardType::e_DynArrayMsgLength, LogViewXdrStandardType::e_ByteOrderBigEndian);
|
||||
addStandardType(QStringLiteral("double"), 8, 8, LogViewXdrStandardType::e_Float, LogViewXdrStandardType::e_DynArrayMsgLength, LogViewXdrStandardType::e_ByteOrderBigEndian);
|
||||
addStandardType(QStringLiteral("opaque"), 1, 1, LogViewXdrStandardType::e_Data);
|
||||
addStandardType(QStringLiteral("string"), 1, 1, LogViewXdrStandardType::e_Character);
|
||||
|
||||
|
||||
addStandardType(QLatin1String("alpha"), 1, 1, LogViewXdrStandardType::e_Character);
|
||||
addStandardType(QLatin1String("UInt8"), 1, 1, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QLatin1String("UInt16"), 2, 2, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QLatin1String("UInt24"), 3, 3, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QLatin1String("SInt8"), 1, 1, LogViewXdrStandardType::e_Signed);
|
||||
addStandardType(QLatin1String("SInt16"), 2, 2, LogViewXdrStandardType::e_Signed);
|
||||
addStandardType(QLatin1String("SInt24"), 3, 3, LogViewXdrStandardType::e_Signed);
|
||||
addStandardType(QStringLiteral("alpha"), 1, 1, LogViewXdrStandardType::e_Character);
|
||||
addStandardType(QStringLiteral("UInt8"), 1, 1, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QStringLiteral("UInt16"), 2, 2, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QStringLiteral("UInt24"), 3, 3, LogViewXdrStandardType::e_Unsigned);
|
||||
addStandardType(QStringLiteral("SInt8"), 1, 1, LogViewXdrStandardType::e_Signed);
|
||||
addStandardType(QStringLiteral("SInt16"), 2, 2, LogViewXdrStandardType::e_Signed);
|
||||
addStandardType(QStringLiteral("SInt24"), 3, 3, LogViewXdrStandardType::e_Signed);
|
||||
|
||||
addStandardType(QLatin1String("UInt16LE"), 2, 2, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayMsgLength, LogViewXdrStandardType::e_ByteOrderLittleEndian);
|
||||
addStandardType(QLatin1String("UInt32LE"), 4, 4, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayMsgLength, LogViewXdrStandardType::e_ByteOrderLittleEndian);
|
||||
addStandardType(QStringLiteral("UInt16LE"), 2, 2, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayMsgLength, LogViewXdrStandardType::e_ByteOrderLittleEndian);
|
||||
addStandardType(QStringLiteral("UInt32LE"), 4, 4, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayMsgLength, LogViewXdrStandardType::e_ByteOrderLittleEndian);
|
||||
|
||||
addStandardType(QLatin1String("UInt8Idx"), 1, 1, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayIndex);
|
||||
addStandardType(QLatin1String("UInt16Idx"), 2, 2, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayIndex);
|
||||
addStandardType(QLatin1String("UInt16LEIdx"), 2, 2, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayIndex, LogViewXdrStandardType::e_ByteOrderLittleEndian);
|
||||
addStandardType(QStringLiteral("UInt8Idx"), 1, 1, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayIndex);
|
||||
addStandardType(QStringLiteral("UInt16Idx"), 2, 2, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayIndex);
|
||||
addStandardType(QStringLiteral("UInt16LEIdx"), 2, 2, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayIndex, LogViewXdrStandardType::e_ByteOrderLittleEndian);
|
||||
|
||||
addStandardType(QLatin1String("UInt8IdxDiv8"), 1, 1, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayIndexDiv8);
|
||||
addStandardType(QLatin1String("UInt16IdxDiv8"), 2, 2, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayIndexDiv8);
|
||||
addStandardType(QStringLiteral("UInt8IdxDiv8"), 1, 1, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayIndexDiv8);
|
||||
addStandardType(QStringLiteral("UInt16IdxDiv8"), 2, 2, LogViewXdrStandardType::e_Unsigned, LogViewXdrStandardType::e_DynArrayIndexDiv8);
|
||||
|
||||
const auto DEFINE_NAME = QLatin1String("%#define");
|
||||
const auto DEFINE_NAME = QStringLiteral("%#define");
|
||||
|
||||
|
||||
m_Filename = a_fileName;
|
||||
@@ -155,11 +156,11 @@ void LogViewXdrParser::parseX_File(const QString& a_fileName)
|
||||
|
||||
if (e_ParseMain == m_State)
|
||||
{
|
||||
if (cleanLine.startsWith(QLatin1String("union ")))
|
||||
if (cleanLine.startsWith(QStringLiteral("union ")))
|
||||
{
|
||||
m_State = e_ParseUnion;
|
||||
}
|
||||
else if (cleanLine.startsWith(QLatin1String("struct ")))
|
||||
else if (cleanLine.startsWith(QStringLiteral("struct ")))
|
||||
{
|
||||
m_State = e_ParseStruct;
|
||||
}
|
||||
@@ -182,19 +183,19 @@ void LogViewXdrParser::parseX_File(const QString& a_fileName)
|
||||
{
|
||||
parseDefine(m_Line.mid(DEFINE_NAME.size()));
|
||||
}
|
||||
else if (cleanLine.startsWith(QLatin1String("typedef ")))
|
||||
else if (cleanLine.startsWith(QStringLiteral("typedef ")))
|
||||
{
|
||||
parseTypedef(cleanLine);
|
||||
}
|
||||
else if (cleanLine.startsWith(QLatin1String("enum ")))
|
||||
else if (cleanLine.startsWith(QStringLiteral("enum ")))
|
||||
{
|
||||
parseEnum(cleanLine.mid(5));
|
||||
}
|
||||
else if (cleanLine.startsWith(QLatin1String("enum8 ")))
|
||||
else if (cleanLine.startsWith(QStringLiteral("enum8 ")))
|
||||
{
|
||||
parseEnum(cleanLine.mid(6), 1);
|
||||
}
|
||||
else if (cleanLine.startsWith(QLatin1String("enum16 ")))
|
||||
else if (cleanLine.startsWith(QStringLiteral("enum16 ")))
|
||||
{
|
||||
parseEnum(cleanLine.mid(7), 2);
|
||||
}
|
||||
@@ -213,7 +214,7 @@ void LogViewXdrParser::parseX_File(const QString& a_fileName)
|
||||
}
|
||||
else
|
||||
{
|
||||
QMessageBox::warning(nullptr, QLatin1String("Dateifehler"), QStringLiteral("Konnte die Datei <b>%1</b> nicht öffnen").arg(a_fileName));
|
||||
QMessageBox::warning(nullptr, QStringLiteral("Dateifehler"), QStringLiteral("Konnte die Datei <b>%1</b> nicht öffnen").arg(a_fileName));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -317,8 +318,8 @@ void LogViewXdrParser::parseDefine(const QString &a_line)
|
||||
int sepPos = line.indexOf(QLatin1Char(' '));
|
||||
if (sepPos >= 0)
|
||||
{
|
||||
const QString name = line.leftRef(sepPos).trimmed().toString();
|
||||
QStringRef substitution = line.midRef(sepPos).trimmed();
|
||||
const QString name = QStringView(line).left(sepPos).trimmed().toString();
|
||||
QStringView substitution = QStringView(line).mid(sepPos).trimmed();
|
||||
sepPos = substitution.indexOf(QLatin1Char(' '));
|
||||
if (sepPos >= 0)
|
||||
substitution = substitution.left(sepPos).trimmed();
|
||||
@@ -342,17 +343,17 @@ void LogViewXdrParser::parseDefine(const QString &a_line)
|
||||
|
||||
void LogViewXdrParser::parseEnum(const QString &a_line, const uint16_t a_enumSize)
|
||||
{
|
||||
if (QLatin1String("};") != a_line)
|
||||
if (QStringLiteral("};") != a_line)
|
||||
{
|
||||
switch(m_State)
|
||||
{
|
||||
default:
|
||||
|
||||
|
||||
if (a_line.endsWith(QLatin1String(" {")))
|
||||
if (a_line.endsWith(QStringLiteral(" {")))
|
||||
{
|
||||
m_State = e_ParseEnum;
|
||||
const QString name = a_line.leftRef(a_line.length()-2).trimmed().toString();
|
||||
const QString name = QStringView(a_line).left(a_line.length()-2).trimmed().toString();
|
||||
m_ActElement = new LogViewXdrStruct(name, LogViewXdrElement::e_KindEnum, a_enumSize);
|
||||
if (!addToElementMap(name, m_ActElement))
|
||||
{
|
||||
@@ -524,7 +525,7 @@ void LogViewXdrParser::parseUnion(const QString& a_line)
|
||||
if (!isNextWord("}", false))
|
||||
{
|
||||
QString keyword = getNextWord();
|
||||
if (keyword == QLatin1String("case"))
|
||||
if (keyword == QStringLiteral("case"))
|
||||
{
|
||||
|
||||
|
||||
@@ -542,7 +543,7 @@ void LogViewXdrParser::parseUnion(const QString& a_line)
|
||||
type = getNextWord("Typ");
|
||||
if (type.isEmpty()) return;
|
||||
}
|
||||
while (type == QLatin1String("case"));
|
||||
while (type == QStringLiteral("case"));
|
||||
|
||||
getElement(type);
|
||||
|
||||
@@ -565,13 +566,13 @@ void LogViewXdrParser::parseUnion(const QString& a_line)
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (keyword == QLatin1String("default"))
|
||||
else if (keyword == QStringLiteral("default"))
|
||||
{
|
||||
|
||||
if (isNextWord(":"))
|
||||
{
|
||||
QString defaultDefinition = getNextWord();
|
||||
if (defaultDefinition == QLatin1String("void"))
|
||||
if (defaultDefinition == QStringLiteral("void"))
|
||||
{
|
||||
isNextWord(";");
|
||||
|
||||
@@ -617,8 +618,8 @@ bool LogViewXdrParser::parseEnumLine(const QString& a_line, QString& a_name, QSt
|
||||
int sepPos = line.lastIndexOf(QLatin1Char('='));
|
||||
if (-1 != sepPos)
|
||||
{
|
||||
a_name = line.leftRef(sepPos).trimmed().toString();
|
||||
a_value = line.midRef(sepPos+1).trimmed().toString();
|
||||
a_name = QStringView(line).left(sepPos).trimmed().toString();
|
||||
a_value = QStringView(line).mid(sepPos+1).trimmed().toString();
|
||||
return true;
|
||||
}
|
||||
else
|
||||
@@ -864,13 +865,13 @@ bool LogViewXdrParser::isNextWord(const char *a_word, const bool a_doIncrement)
|
||||
void LogViewXdrParser::fillWordList(const QString& a_line)
|
||||
{
|
||||
QString line = a_line;
|
||||
line.replace(QLatin1Char('('), QLatin1String(" ( "));
|
||||
line.replace(QLatin1Char(')'), QLatin1String(" ) "));
|
||||
line.replace(QLatin1Char('{'), QLatin1String(" { "));
|
||||
line.replace(QLatin1Char('}'), QLatin1String(" } "));
|
||||
line.replace(QLatin1Char(':'), QLatin1String(" : "));
|
||||
line.replace(QLatin1Char(';'), QLatin1String(" ; "));
|
||||
m_WordList = line.split(QLatin1Char(' '), QString::SkipEmptyParts);
|
||||
line.replace(QLatin1Char('('), QStringLiteral(" ( "));
|
||||
line.replace(QLatin1Char(')'), QStringLiteral(" ) "));
|
||||
line.replace(QLatin1Char('{'), QStringLiteral(" { "));
|
||||
line.replace(QLatin1Char('}'), QStringLiteral(" } "));
|
||||
line.replace(QLatin1Char(':'), QStringLiteral(" : "));
|
||||
line.replace(QLatin1Char(';'), QStringLiteral(" ; "));
|
||||
m_WordList = line.split(QLatin1Char(' '), Qt::SkipEmptyParts);
|
||||
m_WordListIndex = 0;
|
||||
|
||||
|
||||
@@ -906,8 +907,8 @@ QString LogViewXdrParser::getNextType(bool& a_ok)
|
||||
a_ok = true;
|
||||
QString type = getNextWord("Typ");
|
||||
if (type.isEmpty()) a_ok = false;
|
||||
if (type == QLatin1String("unsigned") ||
|
||||
type == QLatin1String("signed"))
|
||||
if (type == QStringLiteral("unsigned") ||
|
||||
type == QStringLiteral("signed"))
|
||||
{
|
||||
QString type2 = getNextWord("Typ");
|
||||
if (type2.isEmpty()) a_ok = false;
|
||||
@@ -951,7 +952,7 @@ bool LogViewXdrParser::parseBitfield(const QString& a_fieldText, int16_t& a_firs
|
||||
a_lastBit = -1;
|
||||
bool isLast = true;
|
||||
|
||||
int doublePointPos = a_fieldText.indexOf(QLatin1String(".."));
|
||||
int doublePointPos = a_fieldText.indexOf(QStringLiteral(".."));
|
||||
if (doublePointPos != -1)
|
||||
{
|
||||
QString bitText = a_fieldText.left(doublePointPos);
|
||||
|
||||
Reference in new issue
Block a user