diff options
author | Michi Henning <michi@zeroc.com> | 2002-07-22 06:09:13 +0000 |
---|---|---|
committer | Michi Henning <michi@zeroc.com> | 2002-07-22 06:09:13 +0000 |
commit | eb36fd52b60448f30726e8d24710cb75587cc357 (patch) | |
tree | 90a9f76949f3ba6f4c85981a47186e328d2b56f6 /cpp/include/Slice/Parser.h | |
parent | remove print statement in offer registration. (diff) | |
download | ice-eb36fd52b60448f30726e8d24710cb75587cc357.tar.bz2 ice-eb36fd52b60448f30726e8d24710cb75587cc357.tar.xz ice-eb36fd52b60448f30726e8d24710cb75587cc357.zip |
Added sanity checks for local types, so a non-local interface can't have an
operation with local parameters, etc.
Diffstat (limited to 'cpp/include/Slice/Parser.h')
-rw-r--r-- | cpp/include/Slice/Parser.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/cpp/include/Slice/Parser.h b/cpp/include/Slice/Parser.h index a4ef6fbce6e..aec3c2e934b 100644 --- a/cpp/include/Slice/Parser.h +++ b/cpp/include/Slice/Parser.h @@ -213,6 +213,8 @@ class SLICE_API Type : virtual public SyntaxTreeBase { public: + virtual bool isLocal() const = 0; + protected: Type(const UnitPtr&); @@ -240,6 +242,9 @@ public: KindObjectProxy, KindLocalObject }; + + virtual bool isLocal() const; + Kind kind() const; std::string kindAsString() const; @@ -420,7 +425,7 @@ public: virtual std::string kindOf() const; virtual void recDependencies(std::set<ConstructedPtr>&); // Internal operation, don't use directly. - static void checkBasesAreLegal(const std::string&, const ClassList&, const UnitPtr&); + static void checkBasesAreLegal(const std::string&, bool, const ClassList&, const UnitPtr&); protected: @@ -496,6 +501,8 @@ class SLICE_API Proxy : virtual public Type { public: + virtual bool isLocal() const; + ClassDeclPtr _class() const; Proxy(const ClassDeclPtr&); |