diff options
author | Mark Spruiell <mes@zeroc.com> | 2012-05-10 16:45:22 -0700 |
---|---|---|
committer | Mark Spruiell <mes@zeroc.com> | 2012-05-10 16:45:22 -0700 |
commit | 485691562a75595eda00af35f5235f6fc22fa36c (patch) | |
tree | 4eaf48ac7512239a47d97e533cd3da1a75084f29 /cpp/src/Slice/Parser.cpp | |
parent | * C++ implementation for compact/sliced formats (diff) | |
download | ice-485691562a75595eda00af35f5235f6fc22fa36c.tar.bz2 ice-485691562a75595eda00af35f5235f6fc22fa36c.tar.xz ice-485691562a75595eda00af35f5235f6fc22fa36c.zip |
C++ bug fixes; adding more Python tests
Diffstat (limited to 'cpp/src/Slice/Parser.cpp')
-rwxr-xr-x | cpp/src/Slice/Parser.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/cpp/src/Slice/Parser.cpp b/cpp/src/Slice/Parser.cpp index 93cbb799fc6..96260809ef8 100755 --- a/cpp/src/Slice/Parser.cpp +++ b/cpp/src/Slice/Parser.cpp @@ -3433,6 +3433,20 @@ Slice::ClassDef::hasDefaultValues() const return false; } +bool +Slice::ClassDef::inheritsMetaData(const string& meta) const +{ + for(ClassList::const_iterator p = _bases.begin(); p != _bases.end(); ++p) + { + if((*p)->hasMetaData(meta) || (*p)->inheritsMetaData(meta)) + { + return true; + } + } + + return false; +} + Contained::ContainedType Slice::ClassDef::containedType() const { @@ -3862,6 +3876,17 @@ Slice::Exception::hasDefaultValues() const return false; } +bool +Slice::Exception::inheritsMetaData(const string& meta) const +{ + if(_base && (_base->hasMetaData(meta) || _base->inheritsMetaData(meta))) + { + return true; + } + + return false; +} + string Slice::Exception::kindOf() const { |