9#ifndef QTSMITHY_MODEL_P_H
10#define QTSMITHY_MODEL_P_H
15#include <QCoreApplication>
16#include <QLoggingCategory>
17#include <QVersionNumber>
23Q_DECLARE_TR_FUNCTIONS(
Model);
28 static QJsonObject mergeMetadata(
const QMultiHash<QString, QJsonValue> &metadata);
29 static QVersionNumber smithyVersion(
const QJsonObject &ast);
37 QMultiHash<QString, QJsonValue> allMetadata;
38 QMultiHash<ShapeId, Shape> allShapes;
39 QJsonObject mergedMetadata;
40 QHash<ShapeId, Shape> mergedShapes;
42 Q_DECLARE_PUBLIC(
Model)
ModelPrivate(Model *const q)
Model * q_ptr
Internal q-pointer.
static Q_LOGGING_CATEGORY(lc, "smithy.Model", QtInfoMsg)
Logging category for Model.
The Model class provides a Qt representation of a Smithy semantic model.
Declares the Model class.
#define QTSMITHY_EXPORT
QtSmithy library export/import macro.
#define QTSMITHY_BEGIN_NAMESPACE
Macro for starting the QtSmithy library's top-most namespace (if one is defined).
#define QTSMITHY_BEFRIEND_TEST(Class)
Macro for befriending a related unit test class, but only when QT_TESTLIB_LIB is defined.
#define QTSMITHY_END_NAMESPACE
Macro for ending the QtSmithy library's top-most namespace (if one is defined).
Declares the ShapeId class.