ライブラリ
- ビルトイン (66)
-
fiddle
/ import (55) -
irb
/ cmd / help (11) -
irb
/ cmd / load (33) -
irb
/ cmd / subirb (11) -
irb
/ ext / use-loader (22) -
irb
/ extend-command (33) - open-uri (22)
- openssl (22)
- socket (22)
クラス
- IO (22)
-
IRB
:: ExtendCommand :: Help (11) -
IRB
:: ExtendCommand :: Kill (11) -
IRB
:: ExtendCommand :: Load (11) -
IRB
:: ExtendCommand :: Require (11) -
IRB
:: ExtendCommand :: Source (11) - Module (22)
- Object (22)
- UDPSocket (11)
- UNIXServer (11)
モジュール
-
Fiddle
:: Importer (55) -
IRB
:: ExtendCommandBundle (55) -
OpenSSL
:: Buffering (22) -
OpenURI
:: OpenRead (22)
キーワード
-
accept
_ nonblock (11) - bind (11)
-
create
_ value (11) - execute (55)
-
extend
_ object (11) - extended (11)
-
install
_ alias _ method (11) -
irb
_ context (11) -
irb
_ exit (11) -
irb
_ load (11) -
irb
_ require (11) - open (22)
-
read
_ nonblock (22) -
recvfrom
_ nonblock (11) -
singleton
_ methods (11) - struct (11)
- union (11)
- value (11)
-
write
_ nonblock (22)
検索結果
先頭5件
-
Object
# extend(*modules) -> self (18344.0) -
引数で指定したモジュールのインスタンスメソッドを self の特異 メソッドとして追加します。
...引数で指定したモジュールのインスタンスメソッドを self の特異
メソッドとして追加します。
Module#include は、クラス(のインスタンス)に機能を追加します
が、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......Bar"
class Klass
include Foo
extend Bar
end
p Klass.new.a #=> "ok Foo"
p Klass.b #=> "ok Bar"
//}
extend の機能は、「特異クラスに対する Module#include」
と言い替えることもできます。
ただしその場合、フック用のメソッド
が Module#extended で... -
Fiddle
:: Importer # create _ value(type , val = nil) -> Fiddle :: CStruct (12207.0) -
型が type で要素名が "value" であるような構造体を 定義(Fiddle::Importer#struct)し、 その構造体のメモリを Fiddle::CStruct#malloc で確保し、 確保したメモリを保持しているオブジェクトを返します。
...lue" であるような構造体を
定義(Fiddle::Importer#struct)し、
その構造体のメモリを Fiddle::CStruct#malloc で確保し、
確保したメモリを保持しているオブジェクトを返します。
type は "int", "void*" といった文字列で型を指定します。
val......に 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 # value(type , val = nil) -> Fiddle :: CStruct (12207.0) -
型が type で要素名が "value" であるような構造体を 定義(Fiddle::Importer#struct)し、 その構造体のメモリを Fiddle::CStruct#malloc で確保し、 確保したメモリを保持しているオブジェクトを返します。
...lue" であるような構造体を
定義(Fiddle::Importer#struct)し、
その構造体のメモリを Fiddle::CStruct#malloc で確保し、
確保したメモリを保持しているオブジェクトを返します。
type は "int", "void*" といった文字列で型を指定します。
val......に 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... -
IRB
:: ExtendCommand :: Help # execute(*names) -> nil (12201.0) -
RI から Ruby のドキュメントを参照します。
...RI から Ruby のドキュメントを参照します。
irb(main):001:0> help String#match
...
@param names 参照したいクラス名やメソッド名などを文字列で指定します。
names を指定しなかった場合は、RI を対話的なモードで起動します。メソ......elp
Enter the method name you want to look up.
You can 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 (12201.0) -
ファイル path を Ruby スクリプトとみなし、現在の irb インタプリタ上で実 行します。
...ファイル path を Ruby スクリプトとみなし、現在の irb インタプリタ上で実
行します。
Kernel.#load と異なり、path の内容を irb で一行ずつタイプしたかの
ように、irb 上で一行ずつ評価されます。
@param file_name ファイル名を文......字列で指定します。
@param priv 真を指定した場合は実行は内部的に生成される無名モジュール上
で行われ、グローバルな名前空間を汚染しません。
@raise LoadError 読み込みに失敗した場合に発生します。... -
IRB
:: ExtendCommandBundle # irb _ require(*opts , &b) -> bool (12201.0) -
現在の irb に関する IRB::Context に対して irb_require コマンドを 実行します。
...現在の irb に関する IRB::Context に対して irb_require コマンドを
実行します。
@see IRB::ExtendCommand::Require#execute... -
Module
# extended(obj) -> () (12163.0) -
self が他のオブジェクト に Object#extend されたときに 呼ばれます。引数には extend を行ったオブジェクトが渡されます。
...elf が他のオブジェクト に Object#extend されたときに
呼ばれます。引数には extend を行ったオブジェクトが渡されます。
@param obj Object#extend を行ったオブジェクト
//emlist[例][ruby]{
module Foo
def self.extended(obj)
p "#{obj} extend #{sel......f}"
end
end
Object.new.extend Foo
# => "#<Object:0x401cbc3c> extend Foo"
//}
@see Module#extend_object... -
Module
# extend _ object(obj) -> object (12154.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... -
IRB
:: ExtendCommand :: Kill # execute(*obj) -> object (12101.0) -
指定したサブ irb を停止します。
...サブ irb を停止します。
@param obj 停止するサブ irb を識別する以下のいずれかのオブジェクトを指定します。
* irb インタプリタ番号
* irb オブジェクト
* スレッド ID
* 各インタプリタの self (「irb(obj)」で起動した時の obj)... -
IRB
:: ExtendCommandBundle # install _ alias _ method(to , from , override = NO _ OVERRIDE) (12101.0) -
メソッドのエイリアスを定義します。ライブラリ内部で使用します。
...l か文字列で指定します。
@param from 元のメソッド名を Symbol か文字列で指定します。
@param override 新しいメソッド名が定義済みであった場合にそのメソッドを
上書きするかどうかを
IRB::ExtendCommandBundl......e::NO_OVERRIDE、
IRB::ExtendCommandBundle::OVERRIDE_PRIVATE_ONLY、
IRB::ExtendCommandBundle::OVERRIDE_ALL のいずれか
で指定します。...