QScxmlCompiler Class

The QScxmlCompiler class is a compiler for SCXML files. 更多...

头文件: #include <QScxmlCompiler>
qmake: QT += scxml
开始支持版本: Qt 5.7

公有类型

class Loader

公有函数

QScxmlCompiler(QXmlStreamReader *reader)
~QScxmlCompiler()
QScxmlStateMachine *compile()
QVector<QScxmlError> errors() const
QString fileName() const
Loader *loader() const
void setFileName(const QString &fileName)
void setLoader(Loader *newLoader)

详细描述

The QScxmlCompiler class is a compiler for SCXML files.

Parses an SCXML file and dynamically instantiates a state machine for a successfully parsed SCXML file. If parsing fails, the new state machine cannot start. All errors are returned by QScxmlStateMachine::parseErrors().

To load an SCXML file, QScxmlStateMachine::fromFile or QScxmlStateMachine::fromData should be used. Using QScxmlCompiler directly is only needed when the compiler needs to use a custom QScxmlCompiler::Loader.

成员函数

QScxmlCompiler::QScxmlCompiler(QXmlStreamReader *reader)

Creates a new SCXML compiler for the specified reader.

QScxmlCompiler::~QScxmlCompiler()

Destroys the SCXML compiler.

QScxmlStateMachine *QScxmlCompiler::compile()

Parses an SCXML file and creates a new state machine from it.

If parsing is successful, the returned state machine can be initialized and started. If parsing fails, QScxmlStateMachine::parseErrors() can be used to retrieve a list of errors.

QVector<QScxmlError> QScxmlCompiler::errors() const

Returns the list of parse errors.

QString QScxmlCompiler::fileName() const

Returns the file name associated with the current input.

参见 setFileName().

Loader *QScxmlCompiler::loader() const

Returns the loader that is currently used to resolve and load URIs for the SCXML compiler.

参见 setLoader().

void QScxmlCompiler::setFileName(const QString &fileName)

Sets the file name for the current input to fileName.

The file name is used for error reporting and for resolving relative path URIs.

参见 fileName().

void QScxmlCompiler::setLoader(Loader *newLoader)

Sets newLoader to be used for resolving and loading URIs for the SCXML compiler.

参见 loader().