On 07/03/2010 07:22 PM, Rouslan Korneychuk wrote:
> It's still in the rough, but I wanted to give an update on my C++
> extension generator. It's available at http://github.com/Rouslan/PyExpose

Question that pops to mind immediately: How does this differentiate
itself from SWIG? ( I can't say I'm familiar with SWIG, but the question
had to be posed. )

> 
> The documentation is a little slim right now but there is a
> comprehensive set of examples in test/test_kompile.py (replace the k
> with a c. For some reason, if I post this message with the correct name,
> it doesn't show up). The program takes an input file like
> 
>  <?xml version="1.0"?>
>  <module name="modulename" include="vector">
>      <doc>module doc string</doc>
> 
>      <class name="DVector" type="std::vector&lt;double&gt;">
>          <doc>class doc string</doc>
>          <init overload=""/>
>          <init overload="size_t,const double&amp;"/>
>          <property name="size" get="size" set="resize"/>
>          <def func="push_back"/>
>          <def name="__sequence__getitem__" func="at"
> return-semantic="copy"/>

func="operator[]" would also work, I assume?

>          <def name="__sequence__setitem__" assign-to="at"/>
>      </class>
>  </module>
> 
> and generates the code for a Python extension.
> 
> [snip]
> 
> I'm really interested in what people think of this little project.

How does it deal with pointers? What if something returns a const
pointer - is const correctness enforced?

All in all, it looks rather neat.

Thomas
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to