[C++-SIG] help with CXX-4.2 and add_keyword_method
Phil Austin
phil at geog.ubc.ca
Mon Apr 24 22:35:05 CEST 2000
I'm trying to use add_keyword_method in the appended code
and am getting the following errors from KCC-3.4f under
Solaris 5.6. Am I guessing wrong as to the correct
synax?
Thanks Phil
"/home/phil/include/CXX-4.2/CXX_Extensions.h", line 164: error: no instance of
constructor
"Py::MethodDefExt<T>::MethodDefExt [with T=testkey_module]" matches
the argument list
argument types are: (const char *,
Py::ExtensionModule<testkey_module>::method_keyword_funct
ion_t, PyObject *(PyObject *, PyObject *, PyObject *),
const char *)
name,
^
detected during instantiation of "void
Py::ExtensionModule<T>::add_keyword_method(const char *,
Py::ExtensionModule<T>::method_keyword_function_t, const
char *) [with T=testkey_module]" at line 20 of "testkey.cc"
#include "Python.h"
#include "CXX_Objects.h"
#include "CXX_Extensions.h"
#include <algorithm>
USING(namespace Py)
USING(namespace std)
extern "C" void inittestkey();
class testkey_module : public ExtensionModule<testkey_module>
{
public:
testkey_module()
: ExtensionModule<testkey_module>( "testkey" )
{
add_varargs_method("sum", &testkey_module::ex_sum, "testing");
add_keyword_method("sum2", &testkey_module::ex_sum2, "testing2");
initialize( "documentation for the testkey module" );
Dict d( moduleDictionary() );
d["a_constant"] = Int(12);
}
virtual ~testkey_module() {}
private:
Object ex_sum (const Tuple &a)
{
cout << a[0] << endl;
return a[0];
}
Object ex_sum2 (const Tuple &a, const Dict &b)
{
cout << a[1] << endl;
return a[1];
}
};
void inittestkey()
{
static testkey_module *testkey = new testkey_module;
}
More information about the Cplusplus-sig
mailing list