Хорошо, это очень интересный вопрос, и, возможно, не может быть простого способа сделать это, но решил, что я выброшу его там, прежде чем решить, что изменение Perl - это мой основной ответ.Вызов функции C из Perl внутри встроенного приложения C
Итак, у меня есть приложение C, которое вызывает Perl-скрипты встроенным способом. Все это прекрасно работает и денди, и это довольно удивительно, что я могу передавать информацию и получать информацию. ОДНАКО, теперь на следующее завоевание; Мне нужно разрешить моим встроенным скриптам (сценариям) иметь возможность вызывать некоторые функции в приложении C, которые ORIGINALLY CALLED IT.
Это важно, потому что XSUB потребует от него внешней библиотеки; но я не хочу, чтобы это была внешняя библиотека, я хочу, чтобы это был прямой вызов функции (ов) C. Теперь, возможно, это можно сделать через XSUB, и я только что читал и понимал это неправильно.
Application -(run)-> Perl
Application <-(function_x())- Perl
Application -(returnfunction_x)-> Perl
Причина этого не может быть внешняя библиотека, потому что я, опираясь на данные, которые только созданных/сохраненных в приложении.
Способ сделать это в Python - создать функцию FFI в C, а затем добавить ее в словарь виртуального модуля, который импортирует скрипт Python. Не уверен, что все сделано так же в Perl. –