[pypy-dev] Call rpython from outside
Maciej Fijalkowski
fijall at gmail.com
Tue Jul 11 11:20:36 EDT 2017
Sorry wrong, lltype.GcStruct is GC managed, lltype.Struct should work.
However, please use rffi.CStruct (as it's better defined) and
especially rffi.CArray, since lltype.Array contains length field
On Tue, Jul 11, 2017 at 6:49 PM, Maciej Fijalkowski <fijall at gmail.com> wrote:
> lltype.Struct is a GC-managed struct, you don't want to have this as a
> part of API (use CStruct)
>
> On Mon, Jul 10, 2017 at 6:15 PM, Aleksandr Koshkin
> <tinysnippets at gmail.com> wrote:
>> Here is a link to a function that buggs me.
>> https://github.com/magniff/rere/blob/master/rere/vm/vm_main.py#L110
>> I am using this headers for CFFI:
>> https://github.com/magniff/rere/blob/master/rere/build/vm_headers.h
>>
>> 2017-07-10 17:03 GMT+03:00 Aleksandr Koshkin <tinysnippets at gmail.com>:
>>>
>>> Sup, guys.
>>> I want my rpython function to be invokable from outside world specifically
>>> be python. I have wrapped my function with entrypoint_highlevel and it
>>> appeared in shared object. So far so good. As a first argument this function
>>> takes a pointer to a C struct, and there is a problem. I have precisely
>>> recreated this struct in RPython as a lltypes.Struct (not rffi.CStruct) and
>>> annotated by this object my entrypoint signature, but it seams that some
>>> fields of the passed struct are messed up (shifted basically). Could it be
>>> because I used Struct instead of CStruct? I am using CFFI as a binding
>>> generator.
>>>
>>> --
>>> Kind regards, Aleksandr Koshkin.
>>
>>
>>
>>
>> --
>> Kind regards, Aleksandr Koshkin.
>>
>> _______________________________________________
>> pypy-dev mailing list
>> pypy-dev at python.org
>> https://mail.python.org/mailman/listinfo/pypy-dev
>>
More information about the pypy-dev
mailing list