summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJarek Kobus <jaroslaw.kobus@theqtcompany.com>2016-04-15 15:38:53 +0200
committerJarek Kobus <jaroslaw.kobus@theqtcompany.com>2016-04-16 10:33:53 +0000
commitb5a89712610785706ce7198e234b10b650e06800 (patch)
tree470dc504db655115aae3c4c6b1f8ff11ca049dd3 /src
parentedfc5aaee59f45b5c0a206a1b899a78d430cffb6 (diff)
Remove redundant m_currentParent, it's the same as m_currentState
Change-Id: I2e527519f783184b81f83ab124acfea7b6b8a65c Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
Diffstat (limited to 'src')
-rw-r--r--src/scxml/qscxmlparser.cpp42
-rw-r--r--src/scxml/qscxmlparser_p.h1
2 files changed, 20 insertions, 23 deletions
diff --git a/src/scxml/qscxmlparser.cpp b/src/scxml/qscxmlparser.cpp
index 8cf5872..6abe74e 100644
--- a/src/scxml/qscxmlparser.cpp
+++ b/src/scxml/qscxmlparser.cpp
@@ -2074,8 +2074,7 @@ QScxmlParserPrivate *QScxmlParserPrivate::get(QScxmlParser *parser)
}
QScxmlParserPrivate::QScxmlParserPrivate(QScxmlParser *parser, QXmlStreamReader *reader)
- : m_currentParent(Q_NULLPTR)
- , m_currentState(Q_NULLPTR)
+ : m_currentState(Q_NULLPTR)
, m_defaultLoader(parser)
, m_loader(&m_defaultLoader)
, m_reader(reader)
@@ -2152,7 +2151,6 @@ void QScxmlParserPrivate::parse()
m_doc->qtMode = true;
else if (m_qtMode == QScxmlParser::QtModeDisabled)
m_doc->qtMode = false;
- m_currentParent = m_doc->root;
m_currentState = m_doc->root;
while (!m_reader->atEnd()) {
QXmlStreamReader::TokenType tt = m_reader->readNext();
@@ -2286,20 +2284,20 @@ void QScxmlParserPrivate::parse()
if (!name.isEmpty()) {
scxml->name = name.toString();
}
- m_currentState = m_currentParent = m_doc->root;
+ m_currentState = m_doc->root;
pNew.instructionContainer = &m_doc->root->initialSetup;
} else if (elKind == ParserState::State) {
- auto newState = m_doc->newState(m_currentParent, DocumentModel::State::Normal, xmlLocation());
+ auto newState = m_doc->newState(m_currentState, DocumentModel::State::Normal, xmlLocation());
if (!maybeId(attributes, &newState->id)) return;
if (attributes.hasAttribute(QStringLiteral("initial"))) {
QString initial = attributes.value(QStringLiteral("initial")).toString();
newState->initial += initial.split(QChar::Space, QString::SkipEmptyParts);
}
- m_currentState = m_currentParent = newState;
+ m_currentState = newState;
} else if (elKind == ParserState::Parallel) {
- auto newState = m_doc->newState(m_currentParent, DocumentModel::State::Parallel, xmlLocation());
+ auto newState = m_doc->newState(m_currentState, DocumentModel::State::Parallel, xmlLocation());
if (!maybeId(attributes, &newState->id)) return;
- m_currentState = m_currentParent = newState;
+ m_currentState = newState;
} else if (elKind == ParserState::Initial) {
DocumentModel::AbstractState *parent = currentParent();
if (!parent) {
@@ -2309,10 +2307,10 @@ void QScxmlParserPrivate::parse()
addError(QStringLiteral("Explicit initial state for parallel states not supported (only implicitly through the initial states of its substates)"));
return;
}
- auto newState = m_doc->newState(m_currentParent, DocumentModel::State::Initial, xmlLocation());
- m_currentState = m_currentParent = newState;
+ auto newState = m_doc->newState(m_currentState, DocumentModel::State::Initial, xmlLocation());
+ m_currentState = newState;
} else if (elKind == ParserState::Transition) {
- auto transition = m_doc->newTransition(m_currentParent, xmlLocation());
+ auto transition = m_doc->newTransition(m_currentState, xmlLocation());
transition->events = attributes.value(QLatin1String("event")).toString().split(QLatin1Char(' '), QString::SkipEmptyParts);
transition->targets = attributes.value(QLatin1String("target")).toString().split(QLatin1Char(' '), QString::SkipEmptyParts);
if (attributes.hasAttribute(QStringLiteral("cond")))
@@ -2330,9 +2328,9 @@ void QScxmlParserPrivate::parse()
}
pNew.instructionContainer = &transition->instructionsOnTransition;
} else if (elKind == ParserState::Final) {
- auto newState = m_doc->newState(m_currentParent, DocumentModel::State::Final, xmlLocation());
+ auto newState = m_doc->newState(m_currentState, DocumentModel::State::Final, xmlLocation());
if (!maybeId(attributes, &newState->id)) return;
- m_currentState = m_currentParent = newState;
+ m_currentState = newState;
} else if (elKind == ParserState::History) {
DocumentModel::AbstractState *parent = currentParent();
if (!parent) {
@@ -2350,7 +2348,7 @@ void QScxmlParserPrivate::parse()
addError(QStringLiteral("invalid history type %1, valid values are 'shallow' and 'deep'").arg(type.toString()));
return;
}
- m_currentState = m_currentParent = newState;
+ m_currentState = newState;
} else if (elKind == ParserState::OnEntry) {
switch (m_stack.last().kind) {
case ParserState::Final:
@@ -2415,9 +2413,9 @@ void QScxmlParserPrivate::parse()
data->id = attributes.value(QLatin1String("id")).toString();
data->src = attributes.value(QLatin1String("src")).toString();
data->expr = attributes.value(QLatin1String("expr")).toString();
- if (DocumentModel::Scxml *scxml = m_currentParent->asScxml()) {
+ if (DocumentModel::Scxml *scxml = m_currentState->asScxml()) {
scxml->dataElements.append(data);
- } else if (DocumentModel::State *state = m_currentParent->asState()) {
+ } else if (DocumentModel::State *state = m_currentState->asState()) {
state->dataElements.append(data);
} else {
Q_UNREACHABLE();
@@ -2518,7 +2516,7 @@ void QScxmlParserPrivate::parse()
pNew.instruction = cancel;
} else if (elKind == ParserState::Invoke) {
auto *invoke = m_doc->newNode<DocumentModel::Invoke>(xmlLocation());
- DocumentModel::State *parentState = m_currentParent->asState();
+ DocumentModel::State *parentState = m_currentState->asState();
if (!parentState ||
(parentState->type != DocumentModel::State::Normal && parentState->type != DocumentModel::State::Parallel)) {
addError(QStringLiteral("invoke can only occur in <state> or <parallel>"));
@@ -2584,8 +2582,8 @@ void QScxmlParserPrivate::parse()
case ParserState::Initial:
case ParserState::Final:
case ParserState::History:
- Q_ASSERT(m_currentParent->parent);
- m_currentState = m_currentParent = m_currentParent->parent;
+ Q_ASSERT(m_currentState->parent);
+ m_currentState = m_currentState->parent;
break;
case ParserState::Invoke:
{
@@ -2678,9 +2676,9 @@ void QScxmlParserPrivate::parse()
break;
case ParserState::Data: {
DocumentModel::DataElement *data = Q_NULLPTR;
- if (auto state = m_currentParent->asState()) {
+ if (auto state = m_currentState->asState()) {
data = state->dataElements.last();
- } else if (auto scxml = m_currentParent->asNode()->asScxml()) {
+ } else if (auto scxml = m_currentState->asNode()->asScxml()) {
data = scxml->dataElements.last();
} else {
Q_UNREACHABLE();
@@ -2789,7 +2787,7 @@ void QScxmlParserPrivate::setQtMode(QScxmlParser::QtMode mode)
DocumentModel::AbstractState *QScxmlParserPrivate::currentParent() const
{
- return m_currentParent ? m_currentParent->asAbstractState() : Q_NULLPTR;
+ return m_currentState ? m_currentState->asAbstractState() : Q_NULLPTR;
}
DocumentModel::XmlLocation QScxmlParserPrivate::xmlLocation() const
diff --git a/src/scxml/qscxmlparser_p.h b/src/scxml/qscxmlparser_p.h
index 1298a18..162b611 100644
--- a/src/scxml/qscxmlparser_p.h
+++ b/src/scxml/qscxmlparser_p.h
@@ -651,7 +651,6 @@ private:
QSet<QString> m_allIds;
QScopedPointer<DocumentModel::ScxmlDocument> m_doc;
- DocumentModel::StateContainer *m_currentParent;
DocumentModel::StateContainer *m_currentState;
DefaultLoader m_defaultLoader;
QScxmlParser::Loader *m_loader;