QScxmlCompiler Class

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

头: #include <QScxmlCompiler>
qmake: QT += scxml
Since: 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 )

详细描述

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 )

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

另请参阅 loader ().