[Madrid-pm] FFI::Platypus y funciones en C++ con tipos de la STL

salvador fandino sfandino en gmail.com
Lun Abr 11 03:02:58 PDT 2016


He creado un pequeño módulo que muestra como hacer un wrapper de una
función que toma y devuelve std::string en XS.

  https://github.com/salva/p5-Acme-WrappingTheSTLFromXS

El código XS queda muy simple:


https://github.com/salva/p5-Acme-WrappingTheSTLFromXS/blob/master/WrappingTheSTLFromXS.xs

El truco en realidad está en los typemaps, que son fragmentos de código
donde se define como convertir los datos entre los tipos de C/C++ y las
estructuras de datos usadas internamente por Perl:

  https://github.com/salva/p5-Acme-WrappingTheSTLFromXS/blob/master/typemap

En mi opinión, los typemaps son una de los puntos clave para conseguir que
el código XS no se complique.

2016-04-03 22:28 GMT+02:00 Pablo Rodriguez <
pablo.rodriguez.gonzalez en gmail.com>:

> Hola
>
> En la reunión del otro día comente que no había conseguido que funcionara
> FFI::Platypus con funciones con tipos de la STL en C++, ni siquiera con el
> más básico: std::string.
>
> Joaquin apuntó a un parrafo en la documentación:
> https://metacpan.org/pod/FFI::Platypus::Lang::CPP#the-standard-C-library
>
> Tampoco he conseguido hacerlo funcionar.
>
> ¿Alguien más se anima a probar?
>
> El código básico para probarlo está en el repo con las transparencias:
> https://bitbucket.org/pablorodriguez/slidesperlinteroperability/src/7ef0f4f8a53e0bbd8d28ea01e10e0d37ddbd0a50/examples/Platypus/Cpp/?at=master
>
> Un saludo
>
> _______________________________________________
> Madrid-pm mailing list
> Madrid-pm en pm.org
> http://mail.pm.org/mailman/listinfo/madrid-pm
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.pm.org/pipermail/madrid-pm/attachments/20160411/07fd5fe6/attachment.html>


Más información sobre la lista de distribución Madrid-pm