mirror of https://github.com/swig/swig
38 lines
913 B
OpenEdge ABL
38 lines
913 B
OpenEdge ABL
%module extend_special_variables
|
|
|
|
%rename(ForExtensionNewName) ForExtension;
|
|
%rename(extended_renamed) ForExtension::extended;
|
|
|
|
%extend ForExtension {
|
|
ForExtension() {
|
|
return new ForExtension();
|
|
}
|
|
const char* extended() {
|
|
return "name:$name symname:$symname wrapname:$wrapname overname:$overname decl:$decl fulldecl:$fulldecl parentclasssymname:$parentclasssymname parentclassname:$parentclassname";
|
|
}
|
|
const char* extended(int) {
|
|
return "name:$name symname:$symname wrapname:$wrapname overname:$overname decl:$decl fulldecl:$fulldecl parentclasssymname:$parentclasssymname parentclassname:$parentclassname";
|
|
}
|
|
}
|
|
|
|
%inline %{
|
|
struct ForExtension {
|
|
};
|
|
%}
|
|
|
|
%inline %{
|
|
namespace Space {
|
|
template <class T> class ExtendTemplate {};
|
|
}
|
|
%}
|
|
|
|
%extend Space::ExtendTemplate
|
|
{
|
|
void extending() {
|
|
$parentclassname tmp;
|
|
(void)tmp;
|
|
}
|
|
}
|
|
|
|
%template(ExtendTemplateInt) Space::ExtendTemplate<int>;
|