问题标签 [ruby-ffi]
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.
javascript - 如何使用 rails 和 javascript 计时器让 AJAX 工作?
我正在编程的 Rails 应用程序通过 ruby 的 ffi gem 从共享对象的外部源获取数据。我已经将数据输入并显示在屏幕上一次,但是当我尝试使用 AJAX 更新时,我似乎无法正确操作数据。我只想要一些包含要使用新数据更新的数据值的 div。
窗格控制器:
Coffeescript AJAX:
index.js.erb(我目前在 app/views/pane/ 中有这个地方):
以下是我的路线:
当我尝试这个时,我得到一个错误,即 Nil 没有方法 [],我知道这意味着数据没有被发送,但我不明白为什么?
编辑* nil no 方法 [] 不再存在,但我仍然无法通过 AJAX 显示新数据,我的 js.erb 文件中的值没有正确填写。
index.html.erb:
这也是日志中生成的内容:
ruby - 在 rspec 中查看不是异常的错误消息
我正在为封装 C++ 库的 C API 编写 Ruby API。C API 捕获 C++ 库抛出的 C++ 异常。
理想情况下,我可以进入并修改我的 C 库,以便引发 Ruby 异常,但由于我使用的是 FFI,所以这不是一个真正的选择。
C API 在异常字符串前面加上“Caught exception:”,打印到 STDERR,然后继续,基本上忽略了错误。我想在 rspec 中查看这些类型的字符串。
这可能吗?当然这已经在 rspec 中完成了,但我不太确定如何搜索这种功能。
c - 如何附加使用 ruby ffi 返回字符串的 C 函数?
我目前正在开发一个 C 字符串度量库,并且正在为 ruby 编写绑定。使用ffi如何附加带有签名的函数char *function(const char *, const char *)
?有问题的函数将在堆上分配一个字符串,malloc
然后返回一个指向该字符串的指针。
我相信我需要将 ffi 附加函数包装在 ruby 方法中,以便我可以将返回的字符串指针转换为 ruby 字符串并释放旧指针。
c - 是否可以将 ruby ffi 附加的功能设为私有?
我有一个使用 ruby ffi附加函数的共享对象库。我想为每个函数附加一个别名并将别名设为私有,因为调用它们可能很危险。我将每个函数包装在它们自己的 ruby 模块函数中,这是一个简单的示例:
该函数ffi_function
似乎仍然可以在模块外部调用。我怎样才能让它完全私有化?
ruby - 如何使用 ruby ffi gem 调用 rust 库中的独立函数?
我想将ffi
gem 与rust
.
我已经阅读了这篇(相当过时的)博客文章,其中展示了如何做到这一点。
问题是:它不起作用。
这是我的代码:
测试.rs:
测试.rb:
我像这样编译 test.rs:
进而
输出:
我做错了什么?(我已经尝试过pub extern fn
......,也不起作用。)
ruby - 如何将库和 ffi 接口打包为 gem?可能的?
我为我正在从事的项目创建了一个库。本质上,它将 imgSeek 打包为 pHash/phashion 的替代品。有关背景,请参阅此链接:
http://hackerlabs.org/blog/2012/07/30/organizing-photos-with-duplicate-and-similarity-checking/
该库由一个 C/C++ 共享库(带有 makefile 和狗屎)和 ruby-ffi 绑定组成。我想打包这个以便其他人可以使用它,但我真的不知道如何。
rubygems 站点文档使用 C 扩展打包了一个 gem,但不是我想要的。
我不确定这是否可能。也许我应该做的是将库发布为常规操作系统包(例如 .deb),然后将 ffi 绑定发布为 gem,并让用户单独安装它们。这听起来像是很多工作。
是否可以将 ffi 绑定和库打包在一起,以便安装 gem 导致构建库?就我个人而言,这让我更容易将此代码提供给任何可能想要使用它的人。
代码在这里:
https://bitbucket.org/dradetsky/ruby-seeklib
https://bitbucket.org/dradetsky/seeklib
ruby - 带有 FFI 段错误的 Rust Vec 到 Ruby 数组
我正在尝试返回一个可以从外部 rust 函数转换为 Ruby 数组的结构,但是当我尝试调用 structs #to_a 方法时出现段错误。
当我尝试在 ruby 中使用此函数时,它将返回 Fii::NodesArray。我还可以从结构中获取 len 和数据。只有当我调用#to_a 时才会出现段错误。
ruby - ruby ffi 模块和 fiddle 模块的区别
除了 Fiddle 是 ruby 标准库中的一个模块并且 ruby-ffi 是一个外部模块之外,它们之间的主要区别是什么。
更具体地说,导致您使用其中一种的原因可能是什么?(除了一个创建对外部 gem 的依赖的事实)。
ruby - Ruby FFI 加载 - OSX
我想知道是否有人可以帮助解决此处已打开的问题:
https://github.com/technion/ruby-argon2/issues/1
具体来说,我发布了一个 gem,我收到了用户遇到问题的建议。加载我的 gem 时出现以下错误:
我认为它极有可能是一个 OSX 问题,因为我已经尽了最大的努力来复制它并且没有成功。如果我没有实际编译共享库,该错误基本上显示了我的 Linux 机器上会发生什么。但是,我没有可用的 Mac,因此没有任何测试的能力。
我真的很想认真地支持这个宝石,任何能给我一些指点的人都会非常感激。
ruby - 我可以将 ruby 对象指针传递给 ruby-ffi 回调吗?
我真的可以在正确的方向上推动这一点。
鉴于此 C 代码:
这个红宝石代码:
有什么方法可以将 ruby 数组作为回调数据传递,例如:
问题是回调将被多次调用,我需要一种轻松构造各种 ruby 对象数组的方法。
也许我只是有点累,但感觉有一种简单的方法可以完成这项工作,而我只是没有看到。