summaryrefslogtreecommitdiff
path: root/cpp/src/Slice/Parser.cpp
diff options
context:
space:
mode:
authorMarc Laukien <marc@zeroc.com>2001-09-09 20:59:53 +0000
committerMarc Laukien <marc@zeroc.com>2001-09-09 20:59:53 +0000
commit7b34e5474383bb5870c4af6f29997f7df9482d4c (patch)
tree617267dd108f2d9a008b77a9ec08382386f67b92 /cpp/src/Slice/Parser.cpp
parentfixes (diff)
downloadice-7b34e5474383bb5870c4af6f29997f7df9482d4c.tar.bz2
ice-7b34e5474383bb5870c4af6f29997f7df9482d4c.tar.xz
ice-7b34e5474383bb5870c4af6f29997f7df9482d4c.zip
completed structs; parser visitor changes
Diffstat (limited to 'cpp/src/Slice/Parser.cpp')
-rw-r--r--cpp/src/Slice/Parser.cpp32
1 files changed, 20 insertions, 12 deletions
diff --git a/cpp/src/Slice/Parser.cpp b/cpp/src/Slice/Parser.cpp
index 3730d84c3e9..a14094e513b 100644
--- a/cpp/src/Slice/Parser.cpp
+++ b/cpp/src/Slice/Parser.cpp
@@ -1023,9 +1023,11 @@ Slice::Module::visit(ParserVisitor* visitor)
return;
}
- visitor->visitModuleStart(this);
- Container::visit(visitor);
- visitor->visitModuleEnd(this);
+ if (visitor->visitModuleStart(this))
+ {
+ Container::visit(visitor);
+ visitor->visitModuleEnd(this);
+ }
}
Slice::Module::Module(const ContainerPtr& container, const string& name) :
@@ -1342,9 +1344,11 @@ Slice::ClassDef::visit(ParserVisitor* visitor)
return;
}
- visitor->visitClassDefStart(this);
- Container::visit(visitor);
- visitor->visitClassDefEnd(this);
+ if (visitor->visitClassDefStart(this))
+ {
+ Container::visit(visitor);
+ visitor->visitClassDefEnd(this);
+ }
}
Slice::ClassDef::ClassDef(const ContainerPtr& container, const string& name, bool local, bool intf,
@@ -1469,9 +1473,11 @@ Slice::Struct::visit(ParserVisitor* visitor)
return;
}
- visitor->visitStructStart(this);
- Container::visit(visitor);
- visitor->visitStructEnd(this);
+ if (visitor->visitStructStart(this))
+ {
+ Container::visit(visitor);
+ visitor->visitStructEnd(this);
+ }
}
Slice::Struct::Struct(const ContainerPtr& container, const string& name) :
@@ -1994,9 +2000,11 @@ Slice::Unit::destroy()
void
Slice::Unit::visit(ParserVisitor* visitor)
{
- visitor->visitUnitStart(this);
- Container::visit(visitor);
- visitor->visitUnitEnd(this);
+ if (visitor->visitUnitStart(this))
+ {
+ Container::visit(visitor);
+ visitor->visitUnitEnd(this);
+ }
}
BuiltinPtr