別のキーワード
種類
ライブラリ
- ビルトイン (13)
- e2mmap (3)
- erb (1)
-
fiddle
/ import (7) - forwardable (6)
-
irb
/ cmd / chws (4) -
irb
/ cmd / help (2) -
irb
/ cmd / load (6) -
irb
/ cmd / nop (5) -
irb
/ cmd / pushws (6) -
irb
/ cmd / subirb (8) -
irb
/ ext / save-history (2) -
irb
/ ext / use-loader (2) -
irb
/ extend-command (14) - json (3)
- monitor (2)
-
mutex
_ m (3) -
net
/ http (1) - open-uri (10)
- openssl (4)
- optparse (1)
- profiler (1)
- readline (1)
- socket (4)
- sync (1)
クラス
- IO (2)
-
IRB
:: ExtendCommand :: ChangeWorkspace (1) -
IRB
:: ExtendCommand :: CurrentWorkingWorkspace (1) -
IRB
:: ExtendCommand :: Foreground (1) -
IRB
:: ExtendCommand :: Help (1) -
IRB
:: ExtendCommand :: IrbCommand (1) -
IRB
:: ExtendCommand :: Jobs (1) -
IRB
:: ExtendCommand :: Kill (1) -
IRB
:: ExtendCommand :: Load (1) -
IRB
:: ExtendCommand :: Nop (4) -
IRB
:: ExtendCommand :: PopWorkspace (1) -
IRB
:: ExtendCommand :: PushWorkspace (1) -
IRB
:: ExtendCommand :: Require (1) -
IRB
:: ExtendCommand :: Source (1) -
IRB
:: ExtendCommand :: Workspaces (1) - Module (2)
- Object (4)
-
OpenSSL
:: SSL :: SSLSocket (2) - Regexp (1)
- Socket (2)
- UDPSocket (1)
- UNIXServer (1)
モジュール
-
ERB
:: DefMethod (1) - Exception2MessageMapper (3)
-
Fiddle
:: Importer (6) - Forwardable (4)
-
IRB
:: ContextExtender (2) -
IRB
:: ExtendCommandBundle (12) -
IRB
:: HistorySavingAbility (1) -
JSON
:: Generator :: GeneratorMethods :: String :: Extend (1) - Kernel (2)
- MonitorMixin (1)
-
Mutex
_ m (2) -
OpenSSL
:: Buffering (2) - OpenURI (2)
-
OpenURI
:: OpenRead (3) -
Sync
_ m (1) - URI (2)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - Arguable (1)
- ChangeWorkspace (1)
- Class (1)
- ContextExtender (1)
- CurrentWorkingWorkspace (1)
- EXTENDED (1)
- Extend (2)
- ExtendCommandBundle (1)
- Fail (1)
- Foreground (1)
- Forwardable (1)
- HISTORY (1)
- HTTPNotExtended (1)
- Help (1)
- HistorySavingAbility (1)
- Importer (1)
- IrbCommand (1)
- Jobs (1)
- Kill (1)
- Load (1)
- Meta (1)
- MonitorMixin (1)
-
Mutex
_ m (1) -
NO
_ OVERRIDE (1) - Nop (1)
-
OVERRIDE
_ ALL (1) -
OVERRIDE
_ PRIVATE _ ONLY (1) - PopWorkspace (1)
-
Profiler
_ _ (1) - PushWorkspace (1)
- Raise (1)
- Require (1)
- SingleForwardable (1)
- Source (1)
- WaitReadable (1)
- WaitWritable (1)
- Warning (1)
- Workspaces (1)
-
accept
_ nonblock (2) - bind (1)
-
connect
_ nonblock (2) -
create
_ value (1) -
def
_ delegator (1) -
def
_ erb _ method (1) -
def
_ extend _ command (2) -
def
_ instance _ delegator (1) - delegate (1)
- e2mmap (1)
- execute (15)
-
extend
_ object (4) - extended (2)
- fiddle (1)
-
fiddle
/ import (1) -
fiddle
/ types (1) -
install
_ alias _ method (1) -
install
_ extend _ commands (2) -
instance
_ delegate (1) -
irb
/ completion (1) -
irb
/ extend-command (1) -
irb
_ context (2) -
irb
_ exit (1) -
irb
_ load (1) -
irb
_ original _ method _ name (1) -
irb
_ require (1) -
is
_ a? (1) -
json
_ create (1) -
kind
_ of? (1) -
mon
_ enter (1) -
mu
_ extended (1) - new (1)
- open (6)
-
open
_ uri (2) -
rb
_ extend _ object (1) -
rb
_ mod _ extend _ object (1) -
rb
_ obj _ extend (1) - read (1)
-
read
_ nonblock (2) -
recvfrom
_ nonblock (2) -
ruby 1
. 6 feature (1) -
singleton
_ methods (1) - sizeof (1)
-
stack
_ extend (1) - struct (1)
-
sync
_ extend (1) - union (1)
- value (1)
-
write
_ nonblock (2) - クラス/メソッドの定義 (1)
検索結果
先頭5件
-
Object
# extend(*modules) -> self (54430.0) -
引数で指定したモジュールのインスタンスメソッドを self の特異 メソッドとして追加します。
引数で指定したモジュールのインスタンスメソッドを self の特異
メソッドとして追加します。
Module#include は、クラス(のインスタンス)に機能を追加します
が、extend は、ある特定のオブジェクトだけにモジュールの機能を追加
したいときに使用します。
引数に複数のモジュールを指定した場合、最後
の引数から逆順に extend を行います。
@param modules モジュールを任意個指定します(クラスは不可)。
@return self を返します。
//emlist[][ruby]{
module Foo
def a
'ok Foo'
en... -
IRB
:: ExtendCommandBundle . extend _ object(obj) -> IRB :: ExtendCommandBundle (27622.0) -
IRB::ExtendCommandBundle で定義済みの拡張に指定されたエイリアスを obj に定義します。
IRB::ExtendCommandBundle で定義済みの拡張に指定されたエイリアスを
obj に定義します。
@param obj IRB::ExtendCommandBundle を extend したオブジェクト -
IRB
:: ContextExtender . install _ extend _ commands -> object (27340.0) -
定義済みの拡張を読み込みます。
定義済みの拡張を読み込みます。
IRB::Context で以下のメソッドが利用できるようになります。
* eval_history=
* use_tracer=
* math_mode=
* use_loader=
* save_history=
irb/extend-command が require された時にライブラリ内部で自動的
に実行されます。
@see IRB::ContextExtender.def_extend_command -
IRB
:: ExtendCommandBundle . install _ extend _ commands -> object (27340.0) -
定義済みの拡張を読み込みます。
定義済みの拡張を読み込みます。
irb で以下のメソッドが利用できるようになります。(それぞれ 1 つだけ抜粋)
* irb_current_working_workspace
* irb_change_workspace
* irb_workspaces
* irb_push_workspace
* irb_pop_workspace
* irb_load
* irb_require
* irb_source
* irb
* irb_jobs
* irb_fg
* irb_kill
* irb_help
irb/extend-command が requir... -
IRB
:: ContextExtender . def _ extend _ command(cmd _ name , load _ file , *aliases) -> object (27304.0) -
IRB::Context に cmd_name で指定したメソッドが実行できるように拡張 します。
IRB::Context に cmd_name で指定したメソッドが実行できるように拡張
します。
@param cmd_name メソッド名を Symbol で指定します。
IRB::Context クラスのインスタンスメソッドとして定
義してある必要があります。
@param load_file cmd_name で指定したメソッドが定義されたファイル名を指
定します。このファイルは自動的に require されます。
@param aliases cmd_name の別名を Symb... -
IRB
:: ExtendCommandBundle . def _ extend _ command(cmd _ name , cmd _ class , load _ file = nil , *aliases) -> object (27304.0) -
irb に cmd_name で指定したメソッドが実行できるように拡張します。
irb に cmd_name で指定したメソッドが実行できるように拡張します。
@param cmd_name メソッド名を Symbol か文字列で指定します。
cmd_class で指定するクラスの execute メソッドとして定
義してある必要があります。
@param cmd_class 指定した拡張が定義されたクラス名を Symbol、
String、Class のいずれかで指定します。
なお、このクラスは IRB::ExtendCommand ... -
Module
# extended(obj) -> () (18487.0) -
self が他のオブジェクト に Object#extend されたときに 呼ばれます。引数には extend を行ったオブジェクトが渡されます。
self が他のオブジェクト に Object#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_objec... -
Module
# extend _ object(obj) -> object (18460.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__... -
Mutex
_ m # mu _ extended -> Mutex (18349.0) -
Mutex_m.extend_object から呼び出されます。 ユーザが直接使うことはありません。
Mutex_m.extend_object から呼び出されます。
ユーザが直接使うことはありません。 -
Mutex
_ m . extend _ object(module) -> Module (18322.0) -
ユーザが直接、使うことはありません。
ユーザが直接、使うことはありません。
@see Module#extend_object -
IRB
:: HistorySavingAbility . extended(obj) -> object (18319.0) -
obj に irb のヒストリの読み込み、保存の機能を提供します。
obj に irb のヒストリの読み込み、保存の機能を提供します。
obj を返します。
@param obj IRB::HistorySavingAbility を extend したオブジェクトです。 -
Exception2MessageMapper
. extend _ object(cl) -> () (18304.0) -
@todo
@todo
@param cl -
Sync
_ m # sync _ extend (18304.0) -
@todo
@todo -
Regexp
:: EXTENDED -> Integer (18301.0) -
バックスラッシュでエスケープされていない空白と # から改行までを無 視します。正規表現リテラルの //x オプションと同じ です。(空白を入れる場合は\でエスケープして\ (<-空白)と 指定します)
バックスラッシュでエスケープされていない空白と # から改行までを無
視します。正規表現リテラルの //x オプションと同じ
です。(空白を入れる場合は\でエスケープして\ (<-空白)と
指定します) -
static VALUE rb
_ mod _ extend _ object(VALUE mod , VALUE obj) (18301.0) -
-
static VALUE rb
_ obj _ extend(int argc , VALUE *argv , VALUE obj) (18301.0) -
-
static void stack
_ extend(rb _ thread _ t th , int exit) (18301.0) -
-
void rb
_ extend _ object(VALUE obj , VALUE module) (18301.0) -
-
JSON
:: Ext :: Generator :: GeneratorMethods :: String :: Extend (18049.0) -
Alias of JSON::Generator::GeneratorMethods::String::Extend
Alias of JSON::Generator::GeneratorMethods::String::Extend -
IRB
:: ContextExtender (18001.0) -
IRB::Context を拡張するためのモジュールです。
IRB::Context を拡張するためのモジュールです。 -
IRB
:: ExtendCommandBundle (18001.0) -
irb のコマンドを拡張するためのモジュールです。
irb のコマンドを拡張するためのモジュールです。 -
JSON
:: Generator :: GeneratorMethods :: String :: Extend (18001.0) -
String に JSON で使用する特異メソッドを追加するためのモジュールです。
String に JSON で使用する特異メソッドを追加するためのモジュールです。 -
Net
:: HTTPNotExtended (18001.0) -
HTTP レスポンス 510 (Not Extended) を表現するクラスです。
HTTP レスポンス 510 (Not Extended) を表現するクラスです。
詳しくは 2774 を見てください。 -
irb
/ extend-command (18001.0) -
irb を拡張するためのサブライブラリです。
irb を拡張するためのサブライブラリです。 -
IRB
:: ExtendCommand :: Nop . new(conf) -> IRB :: ExtendCommand :: Nop (9301.0) -
自身を初期化します。ユーザが直接使用するものではありません。
自身を初期化します。ユーザが直接使用するものではありません。
@param conf IRB::Context オブジェクトを指定します。 -
IRB
:: ExtendCommandBundle :: NO _ OVERRIDE -> 0 (9019.0) -
irb でコマンドのエイリアスを定義する際に、既にこれからエイリアス先に指 定したメソッド名と同名のメソッドが定義済みであった場合、エイリアスを定 義しない事を指定するフラグです。
irb でコマンドのエイリアスを定義する際に、既にこれからエイリアス先に指
定したメソッド名と同名のメソッドが定義済みであった場合、エイリアスを定
義しない事を指定するフラグです。
@see IRB::ExtendCommandBundle.def_extend_command -
IRB
:: ExtendCommandBundle :: OVERRIDE _ ALL -> 1 (9019.0) -
irb でコマンドのエイリアスを定義する際に、既にこれからエイリアス先に指 定したメソッド名と同名のメソッドが定義済みであった場合でも、常にエイリ アスを定義する事を指定するフラグです。
irb でコマンドのエイリアスを定義する際に、既にこれからエイリアス先に指
定したメソッド名と同名のメソッドが定義済みであった場合でも、常にエイリ
アスを定義する事を指定するフラグです。
@see IRB::ExtendCommandBundle.def_extend_command -
IRB
:: ExtendCommandBundle :: OVERRIDE _ PRIVATE _ ONLY -> 2 (9019.0) -
irb でコマンドのエイリアスを定義する際に、既にこれからエイリアス先に指 定したメソッド名と同名の public メソッドが定義済みではなかった場合のみ、 エイリアスを定義する事を指定するフラグです。
irb でコマンドのエイリアスを定義する際に、既にこれからエイリアス先に指
定したメソッド名と同名の public メソッドが定義済みではなかった場合のみ、
エイリアスを定義する事を指定するフラグです。
@see IRB::ExtendCommandBundle.def_extend_command -
IRB
:: ExtendCommand :: ChangeWorkspace (9001.0) -
irb 中の irb_change_workspace コマンドのための拡張を定義したクラスです。
irb 中の irb_change_workspace コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: ChangeWorkspace # execute(*obj) -> obj (9001.0) -
irb の self を obj で指定したオブジェクトに設定します。self に設定され たオブジェクトを返します。
irb の self を obj で指定したオブジェクトに設定します。self に設定され
たオブジェクトを返します。
@param obj 任意のオブジェクトを指定できます。複数指定した場合は先頭のオ
ブジェクトのみが設定されます。 -
IRB
:: ExtendCommand :: CurrentWorkingWorkspace (9001.0) -
irb 中の irb_current_working_workspace コマンドのための拡張を定義したク ラスです。
irb 中の irb_current_working_workspace コマンドのための拡張を定義したク
ラスです。 -
IRB
:: ExtendCommand :: CurrentWorkingWorkspace # execute(*obj) -> obj (9001.0) -
irb の self を返します。
irb の self を返します。
@param obj 使用しません。 -
IRB
:: ExtendCommand :: Foreground (9001.0) -
irb 中の irb_fg コマンドのための拡張を定義したクラスです。
irb 中の irb_fg コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: Foreground # execute(*obj) -> IRB :: Irb (9001.0) -
指定したサブ irb に移動します。
指定したサブ irb に移動します。
@param obj 移動するサブ irb を識別する以下のいずれかのオブジェクトを指定します。
* irb インタプリタ番号
* irb オブジェクト
* スレッド ID
* 各インタプリタの self (「irb(obj)」で起動した時の obj) -
IRB
:: ExtendCommand :: Help (9001.0) -
irb 中の help コマンドのための拡張を定義したクラスです。
irb 中の help コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: Help # execute(*names) -> nil (9001.0) -
RI から Ruby のドキュメントを参照します。
RI から Ruby のドキュメントを参照します。
irb(main):001:0> help String#match
...
@param names 参照したいクラス名やメソッド名などを文字列で指定します。
names を指定しなかった場合は、RI を対話的なモードで起動します。メソッド
名などを入力する事でドキュメントの検索が行えます。入力のタブ補完をする
事ができます。また、空行を入力する事で irb のプロンプトに戻る事ができま
す。
irb(main):001:0> help
Enter the method name you want to look... -
IRB
:: ExtendCommand :: IrbCommand (9001.0) -
irb 中の irb コマンドのための拡張を定義したクラスです。
irb 中の irb コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: IrbCommand # execute(*obj) -> IRB :: Irb (9001.0) -
新しいサブ irb インタプリタを起動します。
新しいサブ irb インタプリタを起動します。
@param obj 新しいサブ irb インタプリタで self にするオブジェクトを指定
します。省略した場合は irb を起動したときの main オブジェク
トを self にします。 -
IRB
:: ExtendCommand :: Jobs (9001.0) -
irb 中の irb_jobs コマンドのための拡張を定義したクラスです。
irb 中の irb_jobs コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: Jobs # execute -> IRB :: JobManager (9001.0) -
サブ irb のリストを返します。
サブ irb のリストを返します。 -
IRB
:: ExtendCommand :: Kill (9001.0) -
irb 中の irb_kill コマンドのための拡張を定義したクラスです。
irb 中の irb_kill コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: Kill # execute(*obj) -> object (9001.0) -
指定したサブ irb を停止します。
指定したサブ irb を停止します。
@param obj 停止するサブ irb を識別する以下のいずれかのオブジェクトを指定します。
* irb インタプリタ番号
* irb オブジェクト
* スレッド ID
* 各インタプリタの self (「irb(obj)」で起動した時の obj) -
IRB
:: ExtendCommand :: Load (9001.0) -
irb 中の irb_load コマンドのための拡張を定義したクラスです。
irb 中の irb_load コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: Load # execute(file _ name , priv = nil) -> nil (9001.0) -
ファイル path を Ruby スクリプトとみなし、現在の irb インタプリタ上で実 行します。
ファイル path を Ruby スクリプトとみなし、現在の irb インタプリタ上で実
行します。
Kernel.#load と異なり、path の内容を irb で一行ずつタイプしたかの
ように、irb 上で一行ずつ評価されます。
@param file_name ファイル名を文字列で指定します。
@param priv 真を指定した場合は実行は内部的に生成される無名モジュール上
で行われ、グローバルな名前空間を汚染しません。
@raise LoadError 読み込みに失敗した場合に発生します。 -
IRB
:: ExtendCommand :: Nop (9001.0) -
irb 中でコマンドを拡張するクラスのベースになるクラスです。サブクラスを 定義してコマンドを拡張します。
irb 中でコマンドを拡張するクラスのベースになるクラスです。サブクラスを
定義してコマンドを拡張します。 -
IRB
:: ExtendCommand :: Nop # execute(*opts) -> () (9001.0) -
何もしません。サブクラスでオーバーライドして使用します。
何もしません。サブクラスでオーバーライドして使用します。
@param opts irb 中でコマンドに渡す引数を指定します。 -
IRB
:: ExtendCommand :: Nop # irb _ context -> IRB :: Context (9001.0) -
irb の現在の設定(IRB::Context)を返します。
irb の現在の設定(IRB::Context)を返します。 -
IRB
:: ExtendCommand :: Nop . execute(conf , *opts) -> () (9001.0) -
コマンドを実行します。ユーザが直接使用するものではありません。
コマンドを実行します。ユーザが直接使用するものではありません。
@param conf IRB::Context オブジェクトを指定します。
@param opts irb 中でコマンドに渡す引数を指定します。 -
IRB
:: ExtendCommand :: PopWorkspace (9001.0) -
irb 中の irb_pop_workspace コマンドのための拡張を定義したクラスです。
irb 中の irb_pop_workspace コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: PopWorkspace # execute(*obj) -> [IRB :: WorkSpace] (9001.0) -
UNIX シェルコマンドの popd と同じです。
UNIX シェルコマンドの popd と同じです。
@param obj 使用しません。 -
IRB
:: ExtendCommand :: PushWorkspace (9001.0) -
irb 中の irb_push_workspace コマンドのための拡張を定義したクラスです。
irb 中の irb_push_workspace コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: PushWorkspace # execute(*obj) -> [IRB :: WorkSpace] (9001.0) -
UNIX シェルコマンドの pushd と同じです。
UNIX シェルコマンドの pushd と同じです。
@param obj IRB::WorkSpace オブジェクトを指定します。複数指定した
場合は先頭のオブジェクトのみが設定されます。 -
IRB
:: ExtendCommand :: Require (9001.0) -
irb 中の irb_require コマンドのための拡張を定義したクラスです。
irb 中の irb_require コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: Require # execute(file _ name) -> bool (9001.0) -
ファイル file_name を現在の irb インタプリタ上で実行します。
ファイル file_name を現在の irb インタプリタ上で実行します。
file_name に Ruby スクリプトを指定した場合は、Kernel.#require と異
なり、file_name の内容を irb で一行ずつタイプしたかのように、irb 上で一
行ずつ評価されます。require に成功した場合は true を、そうでない場合は
false を返します。
拡張ライブラリ(*.so,*.o,*.dll など)を指定した場合は単純に require され
ます。
@param file_name ファイル名を文字列で指定します。 -
IRB
:: ExtendCommand :: Source (9001.0) -
irb 中の irb_source コマンドのための拡張を定義したクラスです。
irb 中の irb_source コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: Source # execute(file _ name) -> nil (9001.0) -
現在の irb インタプリタ上で、 Ruby スクリプト path を評価します。
現在の irb インタプリタ上で、 Ruby スクリプト path を評価します。
path の内容を irb で一行ずつタイプしたかのように、irb 上で一行ずつ評価
されます。$" は更新されず、何度でも実行し直す事ができます。
@param file_name ファイル名を文字列で指定します。 -
IRB
:: ExtendCommand :: Workspaces (9001.0) -
irb 中の irb_workspaces コマンドのための拡張を定義したクラスです。
irb 中の irb_workspaces コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: Workspaces # execute(*obj) -> [IRB :: WorkSpace] (9001.0) -
現在のワークスペースの一覧を返します。
現在のワークスペースの一覧を返します。
@param obj 使用しません。 -
IRB
:: ExtendCommandBundle # install _ alias _ method(to , from , override = NO _ OVERRIDE) (9001.0) -
メソッドのエイリアスを定義します。ライブラリ内部で使用します。
メソッドのエイリアスを定義します。ライブラリ内部で使用します。
@param to 新しいメソッド名を Symbol か文字列で指定します。
@param from 元のメソッド名を Symbol か文字列で指定します。
@param override 新しいメソッド名が定義済みであった場合にそのメソッドを
上書きするかどうかを
IRB::ExtendCommandBundle::NO_OVERRIDE、
IRB::ExtendCommandBundle::OVERRIDE_PRIVATE_... -
IRB
:: ExtendCommandBundle # irb _ context -> IRB :: Context (9001.0) -
現在の irb に関する IRB::Context を返します。
現在の irb に関する IRB::Context を返します。 -
IRB
:: ExtendCommandBundle # irb _ exit(ret = 0) -> object (9001.0) -
irb を終了します。ret で指定したオブジェクトを返します。
irb を終了します。ret で指定したオブジェクトを返します。
@param ret 戻り値を指定します。
ユーザが直接使用するものではありません。 -
IRB
:: ExtendCommandBundle # irb _ load(*opts , &b) -> nil (9001.0) -
現在の irb に関する IRB::Context に対して irb_load コマンドを実行 します。
現在の irb に関する IRB::Context に対して irb_load コマンドを実行
します。
@see IRB::ExtendCommand::Load#execute -
IRB
:: ExtendCommandBundle # irb _ require(*opts , &b) -> bool (9001.0) -
現在の irb に関する IRB::Context に対して irb_require コマンドを 実行します。
現在の irb に関する IRB::Context に対して irb_require コマンドを
実行します。
@see IRB::ExtendCommand::Require#execute -
IRB
:: ExtendCommandBundle . irb _ original _ method _ name(method _ name) -> String (9001.0) -
method_name で指定したメソッドの irb 中でのエイリアスを返します。ライブ ラリ内部で使用します。
method_name で指定したメソッドの irb 中でのエイリアスを返します。ライブ
ラリ内部で使用します。
@param method_name メソッド名を Symbol か文字列で指定します。
@see IRB::ExtendCommandBundle#install_alias_method -
JSON
:: Generator :: GeneratorMethods :: String :: Extend . json _ create(hash) -> String (9001.0) -
JSON のオブジェクトから Ruby の文字列を生成して返します。
JSON のオブジェクトから Ruby の文字列を生成して返します。
@param hash キーとして "raw" という文字列を持ち、その値として数値の配列を持つハッシュを指定します。
require 'json'
String.json_create({"raw" => [0x41, 0x42, 0x43]}) # => "ABC" -
fiddle (109.0)
-
*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。
*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。
dl と同等の機能を持ちますが、
dl は 2.0 以降deprecated となり、2.2.0 で削除されました。このライブラリ
を代わりに使います。
=== 使い方
通常は fiddle/import ライブラリを require して
Fiddle::Importer モジュールを使用します。
Fiddle モジュール自体はプリミティブな機能しか提供していません。
Fiddle::Importer モジュールは以下のようにユーザが定義した
モジュールを拡張する形で使います。
require ... -
MonitorMixin (91.0)
-
スレッドの同期機構としてのモニター機能を提供するモジュールです。
スレッドの同期機構としてのモニター機能を提供するモジュールです。
クラスに Module#include したり、オブジェクトに
Object#extend したりすることでそのクラス/オブジェクトに
モニタ機能を追加します。
=== 例
//emlist[消費者、生産者問題の例][ruby]{
require 'monitor'
buf = []
buf.extend(MonitorMixin) # 配列にモニタ機能を追加
empty_cond = buf.new_cond # 配列が空であるかないかを通知する条件変数
# consumer
Thread.start do
lo... -
e2mmap (91.0)
-
例外クラスに特定のエラーメッセージ用フォーマットを関連づけるためのライブラリです。
例外クラスに特定のエラーメッセージ用フォーマットを関連づけるためのライブラリです。
=== 使い方
1. クラス定義の中で、Exception2MessageMapper を extend すれば、
def_e2message メソッドや def_exception メソッドが使えます。
これらで例外クラスとメッセージを関連づけることができます。
例:
class Foo
extend Exception2MessageMapper
def_e2message ExistingExceptionClass, "message..."
def_exceptio... -
ruby 1
. 6 feature (91.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
ruby 1.6 feature
ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン
になります。
((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。
== 1.6.8 (2002-12-24) -> stable-snapshot
: 2003-01-22: errno
EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
ていま... -
Mutex
_ m (85.0) -
スレッド同期機構である Thread::Mutex のモジュール版です。クラスに Module#include することでそのクラスに Mutex 機能を持たせることができます。 また、普通のオブジェクトを Object#extend により Mutex にする事ができます。
スレッド同期機構である Thread::Mutex のモジュール版です。クラスに
Module#include することでそのクラスに Mutex 機能を持たせることができます。
また、普通のオブジェクトを Object#extend により Mutex にする事ができます。
このモジュールによるロックは再入不可能です。再入可能な同等品が必要な場合は
Sync_m の利用を考えてください。
「mu_」の付かないメソッド(Mutex_m#lock, Mutex_m#synchronize,
Mutex_m#locked?, Mutex_m#try_lock, Mutex_m#unlock)... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (73.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
1.6.8から1.8.0への変更点(まとめ)
* ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>))
* ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>))
* ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))... -
クラス/メソッドの定義 (73.0)
-
クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined
クラス/メソッドの定義
* クラス/メソッドの定義:
* class
* singleton_class
* module
* method
* operator
* nest_method
* eval_method
* singleton_method
* class_method
* limit
* 定義に関する操作:
* alias
* undef
* defined
===[a:class] クラス定義
//emlist[例][ruby]{
class Foo < S... -
Kernel
. # open(name , mode = & # 39;r& # 39; , perm = nil , options = {}) -> StringIO | Tempfile | IO (67.0) -
name が http:// や ftp:// で始まっている文字列なら URI のリソースを 取得した上で StringIO オブジェクトまたは Tempfile オブジェクトとして返します。 返されるオブジェクトは OpenURI::Meta モジュールで extend されています。
name が http:// や ftp:// で始まっている文字列なら URI のリソースを
取得した上で StringIO オブジェクトまたは Tempfile オブジェクトとして返します。
返されるオブジェクトは OpenURI::Meta モジュールで extend されています。
name に open メソッドが定義されている場合は、*rest を引数として渡し
name.open(*rest, &block) のように name の open メソッドが呼ばれます。
これ以外の場合は、name はファイル名として扱われ、従来の
Kernel.#open(name, *res... -
Kernel
. # open(name , mode = & # 39;r& # 39; , perm = nil , options = {}) {|ouri| . . . } -> object (67.0) -
name が http:// や ftp:// で始まっている文字列なら URI のリソースを 取得した上で StringIO オブジェクトまたは Tempfile オブジェクトとして返します。 返されるオブジェクトは OpenURI::Meta モジュールで extend されています。
name が http:// や ftp:// で始まっている文字列なら URI のリソースを
取得した上で StringIO オブジェクトまたは Tempfile オブジェクトとして返します。
返されるオブジェクトは OpenURI::Meta モジュールで extend されています。
name に open メソッドが定義されている場合は、*rest を引数として渡し
name.open(*rest, &block) のように name の open メソッドが呼ばれます。
これ以外の場合は、name はファイル名として扱われ、従来の
Kernel.#open(name, *res... -
URI
. open(name , mode = & # 39;r& # 39; , perm = nil , options = {}) -> StringIO | Tempfile | IO (67.0) -
name が http:// や https://、ftp:// で始まっている文字列なら URI のリソースを 取得した上で StringIO オブジェクトまたは Tempfile オブジェクトとして返します。 返されるオブジェクトは OpenURI::Meta モジュールで extend されています。
name が http:// や https://、ftp:// で始まっている文字列なら URI のリソースを
取得した上で StringIO オブジェクトまたは Tempfile オブジェクトとして返します。
返されるオブジェクトは OpenURI::Meta モジュールで extend されています。
name に open メソッドが定義されている場合は、*rest を引数として渡し
name.open(*rest, &block) のように name の open メソッドが呼ばれます。
これ以外の場合は、name はファイル名として扱われ、従来の
Kernel.#open(n... -
URI
. open(name , mode = & # 39;r& # 39; , perm = nil , options = {}) {|ouri| . . . } -> object (67.0) -
name が http:// や https://、ftp:// で始まっている文字列なら URI のリソースを 取得した上で StringIO オブジェクトまたは Tempfile オブジェクトとして返します。 返されるオブジェクトは OpenURI::Meta モジュールで extend されています。
name が http:// や https://、ftp:// で始まっている文字列なら URI のリソースを
取得した上で StringIO オブジェクトまたは Tempfile オブジェクトとして返します。
返されるオブジェクトは OpenURI::Meta モジュールで extend されています。
name に open メソッドが定義されている場合は、*rest を引数として渡し
name.open(*rest, &block) のように name の open メソッドが呼ばれます。
これ以外の場合は、name はファイル名として扱われ、従来の
Kernel.#open(n... -
SingleForwardable (55.0)
-
オブジェクトに対し、メソッドの委譲機能を定義するモジュールです。
オブジェクトに対し、メソッドの委譲機能を定義するモジュールです。
=== 使い方
オブジェクトに対して extend して使います。
例:
require 'forwardable'
g = Goo.new
g.extend SingleForwardable
g.def_delegator("@out", :puts)
g.puts ...
また、SingleForwardable はクラスやモジュールに対して以下のようにする事もできます。
require 'forwardable'
class Implementation
def self.... -
fiddle
/ import (55.0) -
fiddle ライブラリのための高レベルインターフェースを提供するライブラリです。
fiddle ライブラリのための高レベルインターフェースを提供するライブラリです。
通常は fiddle ライブラリを使わずこの fiddle/import ライブラリを使います。
主な使い方は fiddle も参照してください。
=== 高度な使用法
==== ○○の配列を関数に渡したい
例えば与えられた長さ len の double の配列の和を計算する関数
double sum(double *arry, int len);
があったとします。これを呼び出したい場合は以下のように Array#pack を使用します。
require 'fiddle/import'
m... -
IRB
:: HistorySavingAbility (49.0) -
IRB::HistorySavingAbility を extend したオブジェクトに irb のヒス トリの読み込み、保存の機能を提供するモジュールです。
IRB::HistorySavingAbility を extend したオブジェクトに irb のヒス
トリの読み込み、保存の機能を提供するモジュールです。 -
OpenURI
:: Meta (49.0) -
サーバから取得したデータの属性を扱うために使われるモジュールです。 データを表す文字列や StringIO が extend します。
サーバから取得したデータの属性を扱うために使われるモジュールです。
データを表す文字列や StringIO が extend します。 -
OpenURI
:: OpenRead # read(options = {}) -> String (49.0) -
自身が表す内容を読み込んで文字列として返します。 self.open(options={}) {|io| io.read } と同じです。 このメソッドによって返される文字列は OpenURI::Meta によって extend されています。
自身が表す内容を読み込んで文字列として返します。
self.open(options={}) {|io| io.read } と同じです。
このメソッドによって返される文字列は OpenURI::Meta
によって extend されています。
@param options ハッシュを与えます。
require 'open-uri'
uri = URI.parse('http://www.example.com/')
str = uri.read
p str.is_a?(OpenURI::Meta) # => true
p str.content_type -
OptionParser
:: Arguable (49.0) -
主に Object::ARGV を拡張するために用意されたモジュールです。 optparse を require することにより、ARGV は OptionParser::Arguable を Object#extend します。
主に Object::ARGV を拡張するために用意されたモジュールです。
optparse を require することにより、ARGV は
OptionParser::Arguable を Object#extend します。
コマンドライン引数を表す文字列の配列を、拡張するためにも使うことができます。 -
Readline
:: HISTORY (49.0) -
Readline::HISTORY を使用してヒストリにアクセスできます。 Enumerable モジュールを extend しており、 Array クラスのように振る舞うことができます。 例えば、HISTORY[4] により 5 番目に入力した内容を取り出すことができます。
Readline::HISTORY を使用してヒストリにアクセスできます。
Enumerable モジュールを extend しており、
Array クラスのように振る舞うことができます。
例えば、HISTORY[4] により 5 番目に入力した内容を取り出すことができます。 -
Forwardable (37.0)
-
クラスに対し、メソッドの委譲機能を定義するモジュールです。
クラスに対し、メソッドの委譲機能を定義するモジュールです。
=== 使い方
クラスに対して Object#extend して使います。Module#include でないところに注意して下さい。
例:
require 'forwardable'
class Foo
extend Forwardable
def_delegators("@out", "printf", "print")
def_delegators(:@in, :gets)
def_delegator(:@contents, :[], "content_at")
en... -
Object
# singleton _ methods(inherited _ too = true) -> [Symbol] (37.0) -
そのオブジェクトに対して定義されている特異メソッド名 (public あるいは protected メソッド) の一覧を返します。
そのオブジェクトに対して定義されている特異メソッド名
(public あるいは protected メソッド) の一覧を返します。
inherited_too が真のときは継承した特異メソッドを含みます。
継承した特異メソッドとは Object#extend によって追加された特異メソッドや、
self がクラスの場合はスーパークラスのクラスメソッド(Classのインスタンスの特異メソッド)などです。
singleton_methods(false) は、Object#methods(false) と同じです。
@param inherited_too 継承した特異メソッドを含める場合は... -
OpenSSL
:: SSL :: SSLSocket # accept _ nonblock -> self (37.0) -
ノンブロッキング方式で TLS/SSL 通信をサーバモードとして開始し、 クライアントとのハンドシェイクを実行します。
ノンブロッキング方式で
TLS/SSL 通信をサーバモードとして開始し、
クライアントとのハンドシェイクを実行します。
IO が読み込み待ち、もしくは書き込み待ちになった場合は例外を
発生させ、ハンドシェイクを中断します。IO が読み込み/書き込み
可能状態になってからこのメソッドをもう一度呼ぶと
ハンドシェイクを再開します。
@raise OpenSSL::SSL::SSLError ハンドシェイクに失敗した(VERIFY_PEER で
証明書の検証に失敗した場合や、プロトコル合意に失敗したなど)
場合に発生します
(実際は OpenSSL::S... -
Profiler
_ _ (37.0) -
プロファイラの実装です。 Profiler__.start_profile 実行から、Profiler__.stop_profile までの 区間の実行コードのプロファイルを取得します。
プロファイラの実装です。
Profiler__.start_profile 実行から、Profiler__.stop_profile までの
区間の実行コードのプロファイルを取得します。
以下の使用例を参照してください。
require 'profiler'
Profiler__.start_profile
require 'tk' # このコードのプロファイルが測定される
Profiler__.print_profile(STDOUT)
# =>
% cumulative self self ... -
Class (19.0)
-
クラスのクラスです。
クラスのクラスです。
より正確に言えば、個々のクラスはそれぞれメタクラスと呼
ばれる名前のないクラスをクラスとして持っていて、Class はそのメタ
クラスのクラスです。この関係は少し複雑ですが、Ruby を利用するにあたっ
ては特に重要ではありません。
クラスとモジュールには
* クラスはインスタンスを作成できるが、モジュールはできない。
* モジュールを他のモジュールやクラスにインクルードすることはできるが,クラスをインクルードすることはできない。
という違いがありますが、それ以外のほとんどの機能は Module から継
承されています。Module のメソッドのうち
... -
ERB
:: DefMethod . # def _ erb _ method(methodname , erb) -> nil (19.0) -
self に erb のスクリプトをメソッドとして定義します。
self に erb のスクリプトをメソッドとして定義します。
メソッド名は methodname で指定します。
erb が文字列の時、そのファイルを読み込み ERB で変換したのち、メソッドとして定義します。
@param methodname メソッド名
@param erb ERBインスタンスもしくはERBソースファイル名
例:
require 'erb'
class Writer
extend ERB::DefMethod
def_erb_method('to_html', 'writer.erb')
...
end
...
p... -
Exception2MessageMapper
# Fail(exception _ class = nil , *rest) -> () (19.0) -
登録されている情報を使用して、例外を発生させます。
登録されている情報を使用して、例外を発生させます。
@param exception_class 例外クラス。
@param rest メッセージに埋め込む値。
@raise Exception2MessageMapper::ErrNotRegisteredException 指定された例外クラスに対応するメッセージが存在しない場合に発生します。
例:
class Foo
extend Exception2MessageMapper
p def_exception :NewExceptionClass, "message...%d, %d and %d" # =>... -
Exception2MessageMapper
# Raise(exception _ class = nil , *rest) -> () (19.0) -
登録されている情報を使用して、例外を発生させます。
登録されている情報を使用して、例外を発生させます。
@param exception_class 例外クラス。
@param rest メッセージに埋め込む値。
@raise Exception2MessageMapper::ErrNotRegisteredException 指定された例外クラスに対応するメッセージが存在しない場合に発生します。
例:
class Foo
extend Exception2MessageMapper
p def_exception :NewExceptionClass, "message...%d, %d and %d" # =>... -
Fiddle
:: Importer (19.0) -
C の関数をモジュールにインポートするためのモジュールです。
C の関数をモジュールにインポートするためのモジュールです。
対象となるモジュールに Object#extend することで、
そのモジュールにインポートできるようになります。
使いかたは fiddle や fiddle/import を参照してください。 -
Fiddle
:: Importer # bind(signature , *opts) { . . . } -> Fiddle :: Function (19.0) -
Ruby のブロックを C の関数で wrap し、その関数をモジュールに インポートします。
Ruby のブロックを C の関数で wrap し、その関数をモジュールに
インポートします。
これでインポートされた関数はモジュール関数として定義されます。
また、Fiddle::Importer#[] で Fiddle::Function オブジェクトとして
取り出すことができます。
signature で関数の名前とシネグチャを指定します。例えば
"int compare(void*, void*)" のように指定します。
opts には :stdcall もしくは :cdecl を渡すことができ、
呼出規約を明示することができます。
@return インポートした関数を表す ... -
Fiddle
:: Importer # create _ value(type , val = nil) -> Fiddle :: CStruct (19.0) -
型が type で要素名が "value" であるような構造体を 定義(Fiddle::Importer#struct)し、 その構造体のメモリを Fiddle::CStruct#malloc で確保し、 確保したメモリを保持しているオブジェクトを返します。
型が type で要素名が "value" であるような構造体を
定義(Fiddle::Importer#struct)し、
その構造体のメモリを Fiddle::CStruct#malloc で確保し、
確保したメモリを保持しているオブジェクトを返します。
type は "int", "void*" といった文字列で型を指定します。
val に nil 以外を指定すると、確保された構造体に
その値を代入します。
@param type 型を表す文字列
@param val 構造体に確保される初期値
例
require 'fiddle/import'
module M
... -
Fiddle
:: Importer # sizeof(t) -> Integer (19.0) -
C における sizeof(t) の値を返します。
C における sizeof(t) の値を返します。
t が文字列の場合、その文字列が表す C の型の size が返されます。
例えば、sizeof("char") は 1 を返します。
sizeof("char*") は環境によって 4 や 8 といった値を返します。
Fiddle::Importer#struct で定義した
構造体クラスを渡すと、その構造体のサイズを返します。
Fiddle::Importer#union で定義した共用体クラスも同様です。
t がクラスの場合、t が to_ptr というインスタンスメソッドを持っている
ならば t.size を返します。
それ... -
Fiddle
:: Importer # struct(signature) -> Class (19.0) -
C の構造体型に対応する Ruby のクラスを構築して返します。
C の構造体型に対応する Ruby のクラスを構築して返します。
構造体の各要素は C と似せた表記ができます。そしてそれを
配列で signature に渡してデータを定義します。例えば C における
struct timeval {
long tv_sec;
long tv_usec;
};
という構造体型に対応して
Timeval = struct(["long tv_sec", "long tv_usec"])
として構造体に対応するクラスを生成します。
このメソッドが返すクラスには以下のメソッドが定義されています
* クラスメソッド malloc
... -
Fiddle
:: Importer # union(signature) -> Class (19.0) -
C の共用体型に対応する Ruby のクラスを構築して返します。
C の共用体型に対応する 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 "lib... -
Fiddle
:: Importer # value(type , val = nil) -> Fiddle :: CStruct (19.0) -
型が type で要素名が "value" であるような構造体を 定義(Fiddle::Importer#struct)し、 その構造体のメモリを Fiddle::CStruct#malloc で確保し、 確保したメモリを保持しているオブジェクトを返します。
型が type で要素名が "value" であるような構造体を
定義(Fiddle::Importer#struct)し、
その構造体のメモリを Fiddle::CStruct#malloc で確保し、
確保したメモリを保持しているオブジェクトを返します。
type は "int", "void*" といった文字列で型を指定します。
val に nil 以外を指定すると、確保された構造体に
その値を代入します。
@param type 型を表す文字列
@param val 構造体に確保される初期値
例
require 'fiddle/import'
module M
... -
Forwardable
# def _ delegator(accessor , method , ali = method) -> () (19.0) -
メソッドの委譲先を設定します。
メソッドの委譲先を設定します。
@param accessor 委譲先のオブジェクト
@param method 委譲先のメソッド
@param ali 委譲元のメソッド
委譲元のオブジェクトで ali が呼び出された場合に、
委譲先のオブジェクトの method へ処理が委譲されるようになります。
委譲元と委譲先のメソッド名が同じ場合は, ali を省略することが可能です。
def_delegator は def_instance_delegator の別名になります。
例:
require 'forwardable'
class MyQueue
exten... -
Forwardable
# def _ instance _ delegator(accessor , method , ali = method) -> () (19.0) -
メソッドの委譲先を設定します。
メソッドの委譲先を設定します。
@param accessor 委譲先のオブジェクト
@param method 委譲先のメソッド
@param ali 委譲元のメソッド
委譲元のオブジェクトで ali が呼び出された場合に、
委譲先のオブジェクトの method へ処理が委譲されるようになります。
委譲元と委譲先のメソッド名が同じ場合は, ali を省略することが可能です。
def_delegator は def_instance_delegator の別名になります。
例:
require 'forwardable'
class MyQueue
exten...