9#ifndef QTSMITHY_MODEL_H
10#define QTSMITHY_MODEL_H
15#include <QCoreApplication>
27Q_DECLARE_TR_FUNCTIONS(
Model);
37 ConflictingMetadata = 6,
48 bool insert(
const QJsonObject &ast);
54 QJsonObject metadata()
const;
64 Q_DECLARE_PRIVATE(
Model)
The ModelPrivate class provides private implementation for Model.
The Model class provides a Qt representation of a Smithy semantic model.
QHash< ShapeId, Shape > shapes(const Shape::Type &type=Shape::Type::Undefined) const
Shape shape(const ShapeId &shapeId) const
bool insert(const QJsonObject &ast)
Add the logical content of the JSON AST model file given by ast into this semantic model.
Model()
Constructs a new, empty Smithy model.
The ShapeId class provides a Qt representation of a Smithy Shape ID.
The Shape class provides a Qt representation of a Smithy semantic shape.
@ Undefined
The shape is undefined, usually the result of an error condition.
#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_DECLARE_TEST(Class)
Macro for forward-delcaring a related unit test class, but only when QT_TESTLIB_LIB 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 Shape class.
Declares the ShapeId class.