aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--typesystem.cpp2
-rw-r--r--typesystem.h14
2 files changed, 15 insertions, 1 deletions
diff --git a/typesystem.cpp b/typesystem.cpp
index 603f414b5..ffbde3656 100644
--- a/typesystem.cpp
+++ b/typesystem.cpp
@@ -493,6 +493,7 @@ bool Handler::startElement(const QString &, const QString &n,
attributes["force-abstract"] = QString("no");
attributes["deprecated"] = QString("no");
attributes["hash-function"] = QString("");
+ attributes["stream"] = QString("no");
// fall throooough
case StackElement::InterfaceTypeEntry:
attributes["default-superclass"] = m_defaultSuperclass;
@@ -649,6 +650,7 @@ bool Handler::startElement(const QString &, const QString &n,
if (!element->entry)
element->entry = new ValueTypeEntry(name);
+ element->entry->setStream(attributes["stream"] == QString("yes"));
ComplexTypeEntry *ctype = static_cast<ComplexTypeEntry *>(element->entry);
ctype->setTargetLangPackage(attributes["package"]);
diff --git a/typesystem.h b/typesystem.h
index 5e1220639..589196208 100644
--- a/typesystem.h
+++ b/typesystem.h
@@ -621,7 +621,8 @@ public:
: m_name(name),
m_type(t),
m_codeGeneration(GenerateAll),
- m_preferredConversion(true)
+ m_preferredConversion(true),
+ m_stream(false)
{
};
@@ -713,6 +714,16 @@ public:
m_preferredConversion = b;
}
+ bool stream() const
+ {
+ return m_stream;
+ }
+
+ void setStream(bool b)
+ {
+ m_stream = b;
+ }
+
// The type's name in C++, fully qualified
QString name() const
{
@@ -899,6 +910,7 @@ private:
Include m_include;
QHash<QString, bool> m_includesUsed;
QString m_conversionRule;
+ bool m_stream;
};
typedef QHash<QString, QList<TypeEntry *> > TypeEntryHash;
typedef QHash<QString, TypeEntry *> SingleTypeEntryHash;