From f32a05a60878e3e38a2d1cff317eccb8f639709c Mon Sep 17 00:00:00 2001 From: William S Fulton Date: Sat, 13 May 2006 23:38:24 +0000 Subject: [PATCH] C# director support added git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9105 626c5289-ae23-0410-ae9c-e8d60b6d4f22 --- SWIG/Lib/csharp/director.swg | 50 ++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 SWIG/Lib/csharp/director.swg diff --git a/SWIG/Lib/csharp/director.swg b/SWIG/Lib/csharp/director.swg new file mode 100644 index 000000000..8957ecf42 --- /dev/null +++ b/SWIG/Lib/csharp/director.swg @@ -0,0 +1,50 @@ +/* ----------------------------------------------------------------------------- + * See the LICENSE file for information on copyright, usage and redistribution + * of SWIG, and the README file for authors - http://www.swig.org/release.html. + * + * director.swg + * + * This file contains support for director classes so that C# proxy + * methods can be called from C++. + * ----------------------------------------------------------------------------- */ + +#ifdef __cplusplus + +#if defined(DEBUG_DIRECTOR_OWNED) +#include +#endif +#include + +namespace Swig { + /* Director base class - not currently used in C# directors */ + class Director { + }; + + /* Base class for director exceptions */ + class DirectorException { + protected: + std::string swig_msg; + + public: + DirectorException(const char* msg) : swig_msg(msg) { + } + DirectorException(const std::string &msg) : swig_msg(msg) { + } + const std::string& what() const { + return swig_msg; + } + virtual ~DirectorException() { + } + }; + + /* Pure virtual method exception */ + class DirectorPureVirtualException : public Swig::DirectorException { + public: + DirectorPureVirtualException(const char* msg) : DirectorException(std::string("Attempt to invoke pure virtual method ") + msg) { + } + }; +} + +#endif /* __cplusplus */ + +