るりまサーチ

最速Rubyリファレンスマニュアル検索!
156件ヒット [1-100件を表示] (0.079秒)

別のキーワード

  1. fiddle ruby_free
  2. rbconfig ruby
  3. fiddle build_ruby_platform
  4. rake ruby
  5. rubygems/defaults ruby_engine

ライブラリ

モジュール

キーワード

検索結果

<< 1 2 > >>

Object#extend(*modules) -> self (18286.0)

引数で指定したモジュールのインスタンスメソッドを self の特異 メソッドとして追加します。

...能を追加します
が、extend は、ある特定のオブジェクトだけにモジュールの機能を追加
したいときに使用します。

引数に複数のモジュールを指定した場合、最後
の引数から逆順に extend を行います。

@
param modules モジュー...
...クラスは不可)。
@
return self を返します。

//emlist[][ruby]{
module Foo
def a
'ok Foo'
end
end

module Bar
def b
'ok Bar'
end
end

obj = Object.new
obj.extend Foo, Bar
p obj.a #=> "ok Foo"
p obj.b #=> "ok Bar"

class Klass
include Foo
extend
Bar
end

p Klass.new.a...
..."
//}

extend
の機能は、「特異クラスに対する Module#include」
と言い替えることもできます。
ただしその場合、フック用のメソッド
が Module#extended ではなく Module#included になるという違いがあります。

//emlist[][ruby]{
# obj.extend Foo...

Module#extend_object(obj) -> object (6296.0)

Object#extend の実体です。オブジェクトにモジュールの機能を追加します。

...Object#extend の実体です。オブジェクトにモジュールの機能を追加します。

Object#extend は、Ruby で書くと以下のように定義できます。

//emlist[例][ruby]{
def extend(*modules)
modules.reverse_each do |mod|
# extend_object や extended はプライ...
...ベートメソッドなので
# 直接 mod.extend_object(self) などとは書けない
mod.__send__(:extend_object, self)
mod.__send__(:extended, self)
end
end
//}

extend
_object のデフォルトの実装では、self に定義されて
いるインスタンスメソッドを obj...
...の特異メソッドとして追加します。

@param obj self の機能を追加するオブジェクトを指定します。

@
return obj で指定されたオブジェクトを返します。

@
see Module#extended...

Module#extended(obj) -> () (6287.0)

self が他のオブジェクト に Object#extend されたときに 呼ばれます。引数には extend を行ったオブジェクトが渡されます。

...bject#extend されたときに
呼ばれます。引数には extend を行ったオブジェクトが渡されます。

@
param obj Object#extend を行ったオブジェクト

//emlist[例][ruby]{
module Foo
def self.extended(obj)
p "#{obj} extend #{self}"
end
end

Object.new.extend Foo...
...# => "#<Object:0x401cbc3c> extend Foo"
//}

@
see Module#extend_object...

IRB::ExtendCommand::Help#execute(*names) -> nil (3151.0)

RI から Ruby のドキュメントを参照します。

...RI から Ruby のドキュメントを参照します。

irb(main):001:0> help String#match
...

@
param names 参照したいクラス名やメソッド名などを文字列で指定します。

names を指定しなかった場合は、RI を対話的なモードで起動します。メソ...
...an use tab to autocomplete.
Enter a blank line to exit.

>> String#match
String#match

(from ruby core)
-
-----------------------------------------------------------------------------
str.match(pattern) -> matchdata or nil
str.match(pattern, pos) -> matchdata or nil
......

IRB::ExtendCommand::Load#execute(file_name, priv = nil) -> nil (3151.0)

ファイル path を Ruby スクリプトとみなし、現在の irb インタプリタ上で実 行します。

...ファイル path を Ruby スクリプトとみなし、現在の irb インタプリタ上で実
行します。

Kernel.#load と異なり、path の内容を irb で一行ずつタイプしたかの
ように、irb 上で一行ずつ評価されます。

@
param file_name ファイル名を文...
...字列で指定します。

@
param priv 真を指定した場合は実行は内部的に生成される無名モジュール上
で行われ、グローバルな名前空間を汚染しません。

@
raise LoadError 読み込みに失敗した場合に発生します。...

絞り込み条件を変える

IRB::ExtendCommand::Source#execute(file_name) -> nil (3139.0)

現在の irb インタプリタ上で、 Ruby スクリプト path を評価します。

...irb インタプリタ上で、 Ruby スクリプト path を評価します。

path の内容を irb で一行ずつタイプしたかのように、irb 上で一行ずつ評価
されます。$" は更新されず、何度でも実行し直す事ができます。

@
param file_name ファイル...

IRB::ExtendCommand::Require#execute(file_name) -> bool (3119.0)

ファイル file_name を現在の irb インタプリタ上で実行します。

...ファイル file_name を現在の irb インタプリタ上で実行します。

file_name に Ruby スクリプトを指定した場合は、Kernel.#require と異
なり、file_name の内容を irb で一行ずつタイプしたかのように、irb 上で一
行ずつ評価されます。req...
...uire に成功した場合は true を、そうでない場合は
false を返します。

拡張ライブラリ(*.so,*.o,*.dll など)を指定した場合は単純に require され
ます。

@
param file_name ファイル名を文字列で指定します。...

Fiddle::Importer#bind(signature, *opts) { ... } -> Fiddle::Function (175.0)

Ruby のブロックを C の関数で wrap し、その関数をモジュールに インポートします。

...Ruby のブロックを C の関数で wrap し、その関数をモジュールに
インポートします。

これでインポートされた関数はモジュール関数として定義されます。
また、Fiddle::Importer#[] で Fiddle::Function オブジェクトとして
取り出す...
...することができます。

@
return インポートした関数を表す Fiddle::Function オブジェクトを返します。

@
param signature 関数の名前とシネグチャ
@
param opts オプション


require 'fiddle/import'

module M
extend
Fiddle::Importer
dlload "libc...
...x.to_s(Fiddle::SIZEOF_INT).unpack("i!")
y = py.to_s(Fiddle::SIZEOF_INT).unpack("i!")

x <=> y
}
end

data = [32, 180001, -13, -1, 0, 49].pack("i!*")
M.qsort(Fiddle::Pointer[data], 6, Fiddle::SIZEOF_INT, M["compare"])
p data.unpack("i!*") # => [-13, -1, 0, 32, 49, 180001]...

Fiddle::Importer#union(signature) -> Class (169.0)

C の共用体型に対応する Ruby のクラスを構築して返します。

...する Ruby のクラスを構築して返します。

共用体型を Ruby 上で定義する方法は Fiddle::Importer#struct と
ほぼ同様です。C における
typedef union epoll_data
{
void *ptr;
int fd;
uint32_t u32;
uint64_t u64;
} epoll_data_t;
は、Ruby上では...
...require 'fiddle/import'

module M
extend
Fiddle::Importer
dlload "libc.so.6"
typealias("uint32_t", "unsigned int")
typealias("uint64_t", "unsigned long long")

EPollData = union(["void *ptr",
"int fd",
"uint32_t u32",...
...なります。

返されるクラスは Fiddle::CUnion を継承しています。

1.9.x ではこのメソッドで返されるクラスは正しく動作しません。
2.0以降では修正されています。

@
param signature 共用体の各要素を文字列で表現したものの配列...
<< 1 2 > >>