director generation fixes
Conflicts: Lib/java/feature_interface.i Source/Modules/csharp.cxx Source/Modules/java.cxx
This commit is contained in:
parent
ccd46ec560
commit
5768d87deb
3 changed files with 13 additions and 3 deletions
|
|
@ -17,6 +17,10 @@
|
|||
%typemap(javadirectorin) CTYPE, CTYPE & "(INTERFACE)new IMPL($jniinput, false)"
|
||||
%typemap(javadirectorin) CTYPE *, CTYPE *const&, CTYPE [] "($jniinput == 0) ? null : (INTERFACE)new IMPL($jniinput, false)"
|
||||
%typemap(javadirectorout) CTYPE, CTYPE *, CTYPE *const&, CTYPE [], CTYPE & "$javacall." ## #INTERFACE ## "_SWIGInterfaceUpcast()"
|
||||
%typemap(directorin, descriptor="L$packagepath/" ## #INTERFACE ## ";") CTYPE *, CTYPE &, CTYPE *const&, CTYPE [], CTYPE &
|
||||
%{ $input = 0;
|
||||
*(($&1_ltype*)&$input) = &$1;
|
||||
%}
|
||||
SWIG_JAVABODY_PROXY(public, protected, CTYPE)
|
||||
%enddef
|
||||
|
||||
|
|
|
|||
|
|
@ -2070,7 +2070,6 @@ public:
|
|||
destructor_call = NewString("");
|
||||
proxy_class_constants_code = NewString("");
|
||||
|
||||
Swig_propagate_interface_methods(n);
|
||||
if (Getattr(n, "feature:interface")) {
|
||||
interface_class_code = NewStringEmpty();
|
||||
String *iname = Getattr(n, "feature:interface:name");
|
||||
|
|
@ -4271,6 +4270,8 @@ public:
|
|||
String *old_director_delegate_instances = director_delegate_instances;
|
||||
String *old_director_method_types = director_method_types;
|
||||
String *old_director_connect_parms = director_connect_parms;
|
||||
if (proxy_flag)
|
||||
Swig_propagate_interface_methods(n);
|
||||
|
||||
int ret = Language::classDeclaration(n);
|
||||
|
||||
|
|
|
|||
|
|
@ -2037,7 +2037,13 @@ public:
|
|||
Printf(f_interface, " long %s_SWIGInterfaceUpcast();\n", iname);
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
int classDeclaration(Node *n) {
|
||||
if (proxy_flag)
|
||||
Swig_propagate_interface_methods(n);
|
||||
return Language::classDeclaration(n);
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
* classHandler()
|
||||
* ---------------------------------------------------------------------- */
|
||||
|
||||
|
|
@ -2141,7 +2147,6 @@ public:
|
|||
destructor_throws_clause = NewString("");
|
||||
proxy_class_constants_code = NewString("");
|
||||
|
||||
Swig_propagate_interface_methods(n);
|
||||
if (Getattr(n, "feature:interface")) {
|
||||
interface_class_code = NewStringEmpty();
|
||||
String *iname = Getattr(n, "feature:interface:name");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue