Как дословно вставить код в интерфейс SWIG?

Мне нужно вставить код в заголовок сгенерированного файла, но вставляемый код написан на Лиспе. Поскольку SWIG пытается его разобрать, он ломается. Мне нужно что-то похожее на команду %pythoncode, но для CFFI (Lisp).

#ifdef SWIGCFFI

%begin
%{
    (in-package :some-package)
%}
#endif /* SWIGCFFI */

Кроме того, посмотрите на это: https://github.com/swig/swig/blob/master/Source/Modules/cffi.cxx#L140 правильно ли я предполагаю, что содержимое %begin будет выброшено, если только CPlusPlus || CWrap не верно? (но мне не нужна оболочка C, а API предназначен для C, а не для C++)?


person wvxvw    schedule 05.05.2017    source источник


Ответы (1)


Отвечая на мой onw вопрос:

%insert("lisphead") %{
    (in-package :some-package)
%}

Кажется, это способ сделать это. Спасибо этому сообщению в блоге: http://www.bnikolic.co.uk/blog/cpp-swig-insert-directive.html

person wvxvw    schedule 05.05.2017