Add test case for SourceForge Bug #1299
This commit is contained in:
parent
54b576d8b2
commit
c786781e92
3 changed files with 68 additions and 0 deletions
|
|
@ -178,6 +178,7 @@ CPP_TEST_CASES += \
|
||||||
director_keywords \
|
director_keywords \
|
||||||
director_namespace_clash \
|
director_namespace_clash \
|
||||||
director_nspace \
|
director_nspace \
|
||||||
|
director_nspace_director_name_collision \
|
||||||
director_nested \
|
director_nested \
|
||||||
director_overload \
|
director_overload \
|
||||||
director_overload2 \
|
director_overload2 \
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,66 @@
|
||||||
|
%module(directors="1") director_nspace_director_name_collision
|
||||||
|
|
||||||
|
#ifdef SWIGJAVA
|
||||||
|
SWIG_JAVABODY_PROXY(public, public, SWIGTYPE)
|
||||||
|
SWIG_JAVABODY_TYPEWRAPPER(public, public, public, SWIGTYPE)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
%{
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
namespace TopLevel
|
||||||
|
{
|
||||||
|
namespace A
|
||||||
|
{
|
||||||
|
class Foo {
|
||||||
|
public:
|
||||||
|
virtual ~Foo() {}
|
||||||
|
virtual std::string ping() { return "TopLevel::A::Foo::ping()"; }
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace B
|
||||||
|
{
|
||||||
|
class Foo {
|
||||||
|
public:
|
||||||
|
virtual ~Foo() {}
|
||||||
|
virtual std::string ping() { return "TopLevel::B:Foo::ping()"; }
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
%}
|
||||||
|
|
||||||
|
%include <std_string.i>
|
||||||
|
|
||||||
|
// nspace feature only supported by these languages
|
||||||
|
#if defined(SWIGJAVA) || defined(SWIGCSHARP) || defined(SWIGD)
|
||||||
|
%nspace TopLevel::A::Foo;
|
||||||
|
%nspace TopLevel::B::Foo;
|
||||||
|
#else
|
||||||
|
#warning nspace feature not yet supported in this target language
|
||||||
|
#endif
|
||||||
|
|
||||||
|
%feature("director") TopLevel::A::Foo;
|
||||||
|
%feature("director") TopLevel::B::Foo;
|
||||||
|
|
||||||
|
namespace TopLevel
|
||||||
|
{
|
||||||
|
namespace A
|
||||||
|
{
|
||||||
|
class Foo {
|
||||||
|
public:
|
||||||
|
virtual ~Foo();
|
||||||
|
virtual std::string ping();
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace B
|
||||||
|
{
|
||||||
|
class Foo {
|
||||||
|
public:
|
||||||
|
virtual ~Foo();
|
||||||
|
virtual std::string ping();
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -46,6 +46,7 @@ SWIGOPT += -package $(JAVA_PACKAGE)
|
||||||
nspace.%: JAVA_PACKAGE = $*Package
|
nspace.%: JAVA_PACKAGE = $*Package
|
||||||
nspace_extend.%: JAVA_PACKAGE = $*Package
|
nspace_extend.%: JAVA_PACKAGE = $*Package
|
||||||
director_nspace.%: JAVA_PACKAGE = $*Package
|
director_nspace.%: JAVA_PACKAGE = $*Package
|
||||||
|
director_nspace_director_name_collision.%: JAVA_PACKAGE = $*Package
|
||||||
|
|
||||||
# Rules for the different types of tests
|
# Rules for the different types of tests
|
||||||
%.cpptest:
|
%.cpptest:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue