ライブラリ
-
fiddle
/ import (110) - rake (33)
-
shell
/ system-command (6)
クラス
-
Rake
:: Application (11) -
Rake
:: FileList (11) -
Shell
:: SystemCommand (6)
モジュール
-
Fiddle
:: Importer (110) - Kernel (11)
キーワード
- [] (11)
-
add
_ loader (11) - bind (11)
-
create
_ value (11) - dlload (11)
- extern (11)
-
import
_ symbol (11) -
start
_ import (6) - struct (11)
- typealias (11)
- union (11)
- value (11)
検索結果
先頭5件
-
Rake
:: FileList # import(array) -> self (27308.0) -
与えられた配列を自身にインポートします。
...param array ファイル名のリストを指定します。
//emlist[][ruby]{
# Rakefile での記載例とする
IO.write("test1.rb", "test")
IO.write("test2.rb", "test")
task default: :test_rake_app
task :test_rake_app do
file_list = FileList.new("test1.rb", "test2.rb", "test3.rb")
file_li......st.import(["test4.rb", "test5.rb"]) # => ["test4.rb", "test5.rb", "test1.rb", "test2.rb", "test3.rb"]
file_list # => ["test4.rb", "test5.rb", "test1.rb", "test2.rb", "test3.rb"]
end
//}... -
Kernel
# import(*filenames) (24308.0) -
分割された Rakefile をインポートします。
...分割された Rakefile をインポートします。
インポートされたファイルは、現在のファイルが完全にロードされた後でロードされます。
このメソッドはインポートするファイルのどこで呼び出されてもかまいません。
また、......されているオブジェクトに依存していてもかまいません。
このメソッドは依存関係を定義したファイルを読み込むのによく使われます。
@param filenames インポートする Rakefile を指定します。
例:
import ".depend", "my_rules"... -
Shell
:: SystemCommand # start _ import -> () (18302.0) -
@todo
@todo -
Fiddle
:: Importer # import _ symbol(name) -> Fiddle :: Pointer (15302.0) -
取り込んだライブラリからシンボルをインポートします。
...取り込んだライブラリからシンボルをインポートします。
返り値はシンボルがロードされたメモリのアドレスを持つ Fiddle::Pointer
オブジェクトを返します。
@param name シンボル名(文字列)... -
Fiddle
:: Importer # typealias(new , orig) -> () (15201.0) -
extern や struct で利用する型の別名を定義します。
...extern や struct で利用する型の別名を定義します。
@param new 別名(文字列)
@param orig 別名を付けたい型の名前(文字列)
@see Fiddle::Importer#extern, Fiddle::Importer#sizeof,
Fiddle::Importer#struct, Fiddle::Importer#union... -
Rake
:: Application # add _ loader(ext , loader) (12349.0) -
与えられた拡張子で終わるファイル名のファイルをロードするためのローダーを 自身に追加します。
...@param ext 拡張子を指定します。
@param loader ローダーを指定します。
//emlist[例][ruby]{
require "rake/loaders/makefile"
# Rakefile での記載例とする
task default: :test
task :test
makefile =<<-EOS
<< <<-'SAMPLE_MF'
# Comments
a: a1 a2 a3 a4
EOS
IO.write("sample.m......f", makefile)
Rake.application.add_loader("mf", Rake::MakefileLoader.new)
Rake.application.add_import("sample.mf")
Rake::Task.task_defined?("a") # => false
Rake.application.load_imports
Rake::Task.task_defined?("a") # => true
//}... -
Fiddle
:: Importer # value(type , val = nil) -> Fiddle :: CStruct (12307.0) -
型が type で要素名が "value" であるような構造体を 定義(Fiddle::Importer#struct)し、 その構造体のメモリを Fiddle::CStruct#malloc で確保し、 確保したメモリを保持しているオブジェクトを返します。
...alue" であるような構造体を
定義(Fiddle::Importer#struct)し、
その構造体のメモリを Fiddle::CStruct#malloc で確保し、
確保したメモリを保持しているオブジェクトを返します。
type は "int", "void*" といった文字列で型を指定します。
va......l に nil 以外を指定すると、確保された構造体に
その値を代入します。
@param type 型を表す文字列
@param val 構造体に確保される初期値
例
require 'fiddle/import'
module M
extend Fiddle::Importer
end
v = M.value("int", 32)
p v.value #......=> 32
v.value = 48
p v.value # => 48... -
Fiddle
:: Importer # create _ value(type , val = nil) -> Fiddle :: CStruct (12207.0) -
型が type で要素名が "value" であるような構造体を 定義(Fiddle::Importer#struct)し、 その構造体のメモリを Fiddle::CStruct#malloc で確保し、 確保したメモリを保持しているオブジェクトを返します。
...alue" であるような構造体を
定義(Fiddle::Importer#struct)し、
その構造体のメモリを Fiddle::CStruct#malloc で確保し、
確保したメモリを保持しているオブジェクトを返します。
type は "int", "void*" といった文字列で型を指定します。
va......l に nil 以外を指定すると、確保された構造体に
その値を代入します。
@param type 型を表す文字列
@param val 構造体に確保される初期値
例
require 'fiddle/import'
module M
extend Fiddle::Importer
end
v = M.value("int", 32)
p v.value #......=> 32
v.value = 48
p v.value # => 48... -
Fiddle
:: Importer # dlload(*libs) -> () (12201.0) -
C の動的ライブラリをモジュールにインポートします。
...だライブラリの関数は Fiddle::Importer#extern で
インポートできます。
複数のライブラリを指定することができます。
ファイル名文字列を指定することでそのライブラリをインポートします。
Fiddle::Handle を渡すとそのハンドル......が指しているライブラリをインポート
します。
このメソッドは同じモジュールで2回呼ばないでください。
@param libs インポートするライブラリ
@raise Fiddle::DLError ライブラリのインポートができなかった場合に発生します... -
Fiddle
:: Importer # bind(signature , *opts) { . . . } -> Fiddle :: Function (9231.0) -
Ruby のブロックを C の関数で wrap し、その関数をモジュールに インポートします。
...で wrap し、その関数をモジュールに
インポートします。
これでインポートされた関数はモジュール関数として定義されます。
また、Fiddle::Importer#[] で Fiddle::Function オブジェクトとして
取り出すことができます。
signature......"int compare(void*, void*)" のように指定します。
opts には :stdcall もしくは :cdecl を渡すことができ、
呼出規約を明示することができます。
@return インポートした関数を表す Fiddle::Function オブジェクトを返します。
@param signature......@param opts オプション
例
require 'fiddle/import'
module M
extend Fiddle::Importer
dlload "libc.so.6"
typealias "size_t", "unsigned long"
extern "int qsort(void*, size_t, size_t, void*)"
bind("int compare(void*, void*)"){|px, py|
x = px.to_s(Fiddle::SIZE...