2
0
mirror of https://github.com/boostorg/python.git synced 2026-01-25 18:32:24 +00:00

BPL support for exporting/importing class wrappers.

[SVN r8788]
This commit is contained in:
Ralf W. Grosse-Kunstleve
2001-01-27 17:35:02 +00:00
parent b0d9bbc0b1
commit e508842da6
25 changed files with 935 additions and 133 deletions

View File

@@ -0,0 +1,32 @@
#include <string>
namespace { // Avoid cluttering the global namespace.
// A couple of simple C++ functions that we want to expose to Python.
std::string greet() { return "hello, world"; }
int square(int number) { return number * number; }
}
#include <boost/python/class_builder.hpp>
namespace python = boost::python;
// Python requires an exported function called init<module-name> in every
// extension module. This is where we build the module contents.
extern "C"
DL_EXPORT(void)
initgetting_started1()
{
try
{
// Create an object representing this extension module.
python::module_builder this_module("getting_started1");
// Add regular functions to the module.
this_module.def(greet, "greet");
this_module.def(square, "square");
}
catch(...)
{
python::handle_exception(); // Deal with the exception for Python
}
}