импорт типов данных c ++ в haskell с помощью ffi - PullRequest
6 голосов
/ 06 декабря 2009

Я пишу оболочку haskell для библиотеки c ++ и, насколько я могу импортировать функции из библиотеки в свою программу на haskell, я понятия не имею, как импортировать типы данных c ++. Например, у меня есть функция, которая принимает в качестве параметра тип video :: E_DRIVER_TYPE EDT_OPENGL, определенный в файле some.h, и, как я уже говорил, я знаю, как импортировать функцию с помощью ffi, используя

иностранные импортные звонки ...

с соответствующим именем функции, обработанной компилятором

но я не могу вызвать функцию из haskell, потому что не могу понять, как импортировать / использовать этот конкретный тип данных видеодрайвера.

Теперь я знаю, что вы можете создавать типы в Haskell, но все же мне нужна отправная точка в отношении того, что определять тип для представления в c ++. (Я в замешательстве)

Буду признателен за любую помощь! Спасибо

1 Ответ

4 голосов
/ 06 декабря 2009

Вызов C ++ из Haskell довольно сложен; Интерфейс сторонней функции Haskell Wiki / Cxx перечисляет некоторые опции.

...