// Copyright (C) 2023 basysKom GmbH, opensource@basyskom.com // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only #pragma once #include class Import; class Visitor; class XmlElement; class TypeDictionary { public: TypeDictionary(bool dependencyTypeDictionary, const QString &defaultByOrder, const QString &targetNamespace, const QMap &namespaces); ~TypeDictionary(); void addType(XmlElement *type); void print() const; void accept(Visitor *visitor); QMap namespaces() const; void setNamespaces(const QMap &namespaces); QString defaultByOrder() const; void setDefaultByOrder(const QString &defaultByOrder); QString targetNamespace() const; void setTargetNamespace(const QString &targetNamespace); QList imports() const; bool dependencyTypeDictionary() const; QList types() const; private: bool m_dependencyTypeDictionary; QString m_defaultByOrder; QString m_targetNamespace; QMap m_namespaces; QList m_types; };