blob: 8b0f0898f4a328532aa97d92e4c76464754b2d99 [file] [log] [blame]
use Inline SWIG => <<"END_CODE", SWIG_ARGS => '-c++ -proxy', CC => 'g++', LD=>'g++';
class Foo {
public:
int meaning() { return 42; };
};
END_CODE
my $o = new Foo();
print $o->meaning(),"\n";
use Inline SWIG => ' ', SWIG_INTERFACE => <<"END_CODE", SWIG_ARGS => '-c++', CC => "g++", LD => "g++";
%include std_string.i
%inline {
template <class Type>
class Bar {
Type _val;
public:
Bar(Type v) : _val(v) {}
Type meaning() { return _val; }
};
}
%template(Bar_i) Bar<int>;
%template(Bar_d) Bar<double>;
%template(Bar_s) Bar<std::string>;
END_CODE
my $o = new Bar_i(1);
print $o->meaning(),"\n";
my $o = new Bar_d(2);
print $o->meaning(),"\n";
my $o = new Bar_s("hello");
print $o->meaning(),"\n";