diff options
author | Marc Laukien <marc@zeroc.com> | 2002-04-19 19:32:21 +0000 |
---|---|---|
committer | Marc Laukien <marc@zeroc.com> | 2002-04-19 19:32:21 +0000 |
commit | 101fc61aa6768b1b9fcbc9911bf83509b221d403 (patch) | |
tree | a31861a676d9cf06700aa8c3d3508d867a02882f /cpp/src/Slice/Parser.cpp | |
parent | #ifdef test that causes problems under Linux (diff) | |
download | ice-101fc61aa6768b1b9fcbc9911bf83509b221d403.tar.bz2 ice-101fc61aa6768b1b9fcbc9911bf83509b221d403.tar.xz ice-101fc61aa6768b1b9fcbc9911bf83509b221d403.zip |
added members to object, facet, and operation not exist exceptions
Diffstat (limited to 'cpp/src/Slice/Parser.cpp')
-rw-r--r-- | cpp/src/Slice/Parser.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/cpp/src/Slice/Parser.cpp b/cpp/src/Slice/Parser.cpp index 2a4464349c4..fc8d797efea 100644 --- a/cpp/src/Slice/Parser.cpp +++ b/cpp/src/Slice/Parser.cpp @@ -935,6 +935,33 @@ Slice::Container::hasProxies() } bool +Slice::Container::hasNonLocals() +{ + for (ContainedList::const_iterator p = _contents.begin(); p != _contents.end(); ++p) + { + ConstructedPtr constructed = ConstructedPtr::dynamicCast(*p); + if (constructed && constructed->isLocal()) + { + return true; + } + + ExceptionPtr exception = ExceptionPtr::dynamicCast(*p); + if (exception && exception->isLocal()) + { + return true; + } + + ContainerPtr container = ContainerPtr::dynamicCast(*p); + if (container && container->hasNonLocals()) + { + return true; + } + } + + return false; +} + +bool Slice::Container::hasClassDecls() { for (ContainedList::const_iterator p = _contents.begin(); p != _contents.end(); ++p) |