LINUX.ORG.RU

[Vala] как писать .vapi?

 ,


0

1

Документацию по этому делу днём с огнём не сыскать :-(

Вот, скажем, как будет выглядеть vapi для такой вот структурки? Просветите, пожалуйста.

typedef struct {
    const char **(*foo) (void);
} bar;



Последнее исправление: CYB3R (всего исправлений: 1)
Ответ на: комментарий от runtime

Anyway, учитывая то, что даже по GIRepository документация, мягко говоря, не очень, скорее всего тебе нужно просто дёргать разработчиков или ковырять сырцы.

runtime ★★★★
()
Ответ на: комментарий от runtime

Не-не, gnome здесь вообще не причём. Есть обычные сишные header-ы самой обычной библиотеки. Хочется написать обёртку.

lomereiter
() автор топика
Ответ на: комментарий от lomereiter

грубо и просто:
vala-gen-introspect создаст gir
valagen создаст vapi из gir
и скорей всего придётся поправить кое-что ручками

правильно и удобно:
читать интеграцию GObject с autotools и make, чтобы gir и/или vapi создавались автоматически при сборке.

bass ★★★★★
()
Ответ на: комментарий от stack_protector

Так я бы и сделал по аналогии, но нигде пока не нашёл такого, чтобы была структура, содержащая указатели на функции, а не просто уйма функций вида classname_methodname(). Если всё так просто — напиши 5 строчек конкретно для это примера, немного же времени займёт? Или ссылку кинь на эти самые аналогии.

lomereiter
() автор топика
Ответ на: комментарий от lomereiter

Или что, может, проще будет сперва написать обёртку на C? Типа такого:

const char** bar_foo(bar* b) { 
    return b -> foo();
}

lomereiter
() автор топика
Ответ на: комментарий от lomereiter

Короче, нашёл отличный пример подобного: libpulse.vapi. Так что от пульсы хоть какая-то польза, да есть :)

lomereiter
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.