使用swig包装自定义哈希表

时间:2013-05-15 07:12:51

标签: python c perl hashtable swig

我有一个用C编写的哈希表的自定义实现,用于我正在开发的应用程序。现在我想在swig中为它创建一个包装器,这样我就可以将它们映射到Python中的本地类型,如“dict”。我希望能够编写一个可以用于Perl和Python的单个接口文件。首先,我想知道这是否可能,或者我应该为每个Python和Perl单独进行吗?

1 个答案:

答案 0 :(得分:0)

可以使用一个实现文件。根据实施的复杂程度,它可以简单如下:

%module my_hash

%inline %{
#include "my_hash.h"
%}

使用以下命令生成接口代码:

swig -python my_hash.i
swig -perl my_hash.i

如果您必须编写任何自定义文字图,则可能必须使用#ifdef SWIGPYTHON#ifdef SWIGPERL在界面定义中指定特定于语言的代码。