我很久以前就用过Ruby 1.9,现在我正在尝试Ruby 3.2 Fiddle。我在www.example.com中尝试了以下代码片段README.md,但它在struct上引发了NameError。
struct
NameError
StudentCollegeDetail = struct [ 'int college_id', 'char college_name[50]' ]
如何使用struct?它的文档在哪里?
mm5n2pyu1#
好吧,这是个愚蠢的问题。你可以像这样使用struct。
require 'fiddle/import' StudentCollegeDetail = Fiddle::Importer::struct [ 'int college_id', 'char college_name[50]' ]
文档在这里。正如Holger所评论的那样,Fiddle::Importer被设计为在这样的模块中用作extend()的参数。
Fiddle::Importer
extend()
require 'fiddle/import' module Libc extend Fiddle::Importer dlload 'libc.so.6' typealias 'clockid_t', 'int' typealias 'time_t', 'int64_t' Timespec = struct [ 'time_t tv_sec', 'long tv_nsec', ] extern 'int clock_getres(clockid_t clk_id, struct timespec *res);' end res = Libc::Timespec.malloc Libc.clock_getres(Process::CLOCK_REALTIME, res) p res.tv_nsec
1条答案
按热度按时间mm5n2pyu1#
好吧,这是个愚蠢的问题。你可以像这样使用
struct
。文档在这里。
正如Holger所评论的那样,
Fiddle::Importer
被设计为在这样的模块中用作extend()
的参数。