summaryrefslogtreecommitdiff
path: root/cpp/src/slice2cpp/Gen.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/slice2cpp/Gen.cpp')
-rw-r--r--cpp/src/slice2cpp/Gen.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/cpp/src/slice2cpp/Gen.cpp b/cpp/src/slice2cpp/Gen.cpp
index 1b0dd3d0294..fa2e480a625 100644
--- a/cpp/src/slice2cpp/Gen.cpp
+++ b/cpp/src/slice2cpp/Gen.cpp
@@ -6636,6 +6636,27 @@ Slice::Gen::StreamVisitor::visitModuleEnd(const ModulePtr&)
}
bool
+Slice::Gen::StreamVisitor::visitExceptionStart(const ExceptionPtr& p)
+{
+ if(!p->isLocal())
+ {
+ string scoped = p->scoped();
+ H << nl << sp << "template<>";
+ H << nl << "struct StreamTrait< " << fixKwd(scoped) << " >" << nl;
+ H << sb;
+ H << nl << "static const ::Ice::StreamTraitType type = ::Ice::StreamTraitTypeUserException;" << nl;
+ H << nl << "static const int enumLimit = 0;";
+ H << eb << ";" << nl;
+ }
+ return true;
+}
+
+void
+Slice::Gen::StreamVisitor::visitExceptionEnd(const ExceptionPtr&)
+{
+}
+
+bool
Slice::Gen::StreamVisitor::visitStructStart(const StructPtr& p)
{
if(!p->isLocal())