问题标签 [vapi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
header-files - Valac 缺少生成的标头
我有两个文件,client.vala
和lib.vapi
.
VAPI 定义了一个类(通常与 C 代码对话):
并client.vala
使用类:
当我尝试编译程序时,出现错误:
编译器似乎想要为client.vala
.
这是一个错误还是我错过了什么?
vala - 为 libui 创建 vala 绑定 (vapi) 的问题
我正在尝试编写一个 VAPI 文件以在 Vala中使用 libui ( https://github.com/andlabs/libui )。这是我的第一次尝试:
这是 vala 中的测试代码:
使用“valac --vapidir .--pkg libui main.vala”编译
会出现以下错误:
main.vala.c:(.text+0x3c): undefined reference to `uiInit'
在 libui 的示例 C 代码中是这样的:
我如何在 vala 中制作这个 memset 东西或将其构建到 vapi 文件中?
vala - 在 vapi 文件中创建信号
我正在尝试编写一个 VAPI 文件以在 Vala中使用 libui ( https://github.com/andlabs/libui )。
我不知道如何将控件中的事件连接到 vala 信号。
在 libui 头文件中,例如关闭窗口,此方法定义:
在 C 示例中,使用方法“onClosing”作为参数调用此方法:
我怎样才能做出类似的东西:
vala - 为#define 指针地址创建绑定
借助Vala 手册中出色的文章作为我的指南,创建一些自定义 vapi defs 。但我不确定如何翻译这些类似 C 函数的宏:
C 代码gpio
这样声明:
我应该将宏声明INP_GPIO(g)
为 void 函数,即
或作为代表,如下所示?
从 VAPI 文件的 C 代码派生 Vala 类型时,我应该遵循哪些条件?
更新:随着我继续从事我的 valaIOT 项目,下面提到的 vapis 维护在https://gitlab.com/gpaslanis/valaiot/tree/master/vapis。请在网站上发布建议/更正。我希望你觉得他们有帮助。
vala - 在 vapi 中隐式传递实例
我正在尝试为mongoc
库编写 VAPI。
我从 struct 创建了一些紧凑的类,并带有一些与之关联的函数。例如Client
看起来像这样:
我还需要绑定一堆相关的功能。我试图将它们绑定为实例方法,如下所示:
所以结果是这样的:
我希望它将第一个client
参数作为调用实例。而不是这个:
我试图得到这个:
我尝试使用this
静态方法instance_pos
和其他调整,但我没有找到让它以这种方式工作的方法。
是否可以在 Vala 中将实例作为参数隐式传递?如果是这样,我如何以隐式传递实例而没有冗余的方式绑定 VAPI?
enums - 在 VAPI 绑定中声明一个新的枚举
我想在 VAPI 文件中声明一个全新的枚举(而不是绑定到 C 枚举)。然而,当我写
并尝试使用值,Vala 尝试引用已经声明的值并在 C 编译器步骤中立即出错:
如何解决这个问题,所以 Vala 将使用我的新值而不是尝试引用那些未声明的值?