ライブラリ
- ビルトイン (5)
- bigdecimal (2)
-
cgi
/ session (1) -
drb
/ acl (1) - fiddle (2)
-
fiddle
/ import (1) -
irb
/ extend-command (3) -
net
/ pop (2) - psych (1)
- rake (1)
-
rake
/ packagetask (1) - rbconfig (1)
-
rdoc
/ top _ level (1) -
rexml
/ document (2) -
rubygems
/ dependency _ installer (1) -
rubygems
/ installer (7) -
rubygems
/ source _ index (2) -
rubygems
/ source _ info _ cache (1) -
rubygems
/ uninstaller (1) - shell (1)
-
shell
/ command-processor (2) -
shell
/ process-controller (1) - thwait (3)
- tracer (3)
-
win32
/ registry (2)
クラス
- ACL (1)
- BigDecimal (2)
-
CGI
:: Session (1) -
Fiddle
:: CStruct (1) -
Fiddle
:: Closure :: BlockCaller (1) -
Fiddle
:: Pointer (1) -
Gem
:: DependencyInstaller (1) -
Gem
:: Installer (7) -
Gem
:: SourceIndex (2) -
Gem
:: SourceInfoCache (1) -
Gem
:: Uninstaller (1) -
Net
:: POP3 (2) -
RDoc
:: TopLevel (1) -
REXML
:: Document (1) -
REXML
:: Element (1) -
Rake
:: PackageTask (1) - Shell (1)
-
Shell
:: CommandProcessor (2) -
Shell
:: ProcessController (1) - Symbol (1)
- SystemCallError (4)
- ThreadsWait (3)
- Tracer (3)
-
Win32
:: Registry (2)
モジュール
-
IRB
:: ContextExtender (1) -
IRB
:: ExtendCommandBundle (2) - Psych (1)
- Rake (1)
- RbConfig (1)
キーワード
- === (1)
-
all
_ classes _ and _ modules (1) -
all
_ symbols (1) -
all
_ waits (2) - application= (1)
- cache (1)
- callback (1)
- create (2)
-
def
_ extend _ command (1) -
delete
_ all (2) -
display
_ c _ call (1) -
display
_ c _ call= (1) -
display
_ c _ call? (1) -
exec
_ format (1) -
exec
_ format= (1) -
from
_ installed _ gems (1) -
home
_ install _ warning (1) -
home
_ install _ warning= (1) -
install
_ builtin _ commands (1) -
install
_ extend _ commands (2) -
install
_ system _ commands (2) -
installed
_ spec _ directories (1) - load (1)
- malloc (2)
- mode (2)
- new (12)
-
path
_ warning (1) -
path
_ warning= (1) -
wait
_ to _ finish _ all _ process _ controllers (1)
検索結果
先頭5件
-
Gem
:: Installer . home _ install _ warning -> bool (27304.0) -
この値が真の場合、ホームディレクトリに Gem をインストールしようとすると警告を表示します。
この値が真の場合、ホームディレクトリに Gem をインストールしようとすると警告を表示します。 -
Gem
:: Installer . home _ install _ warning=(flag) (27304.0) -
ホームディレクトリに Gem をインストールしようとすると警告を表示するかどうかセットします。
ホームディレクトリに Gem をインストールしようとすると警告を表示するかどうかセットします。
@param flag 真を指定するとホームディレクトリに Gem をインストールしよう
とすると警告を表示するようになります。 -
Symbol
. all _ symbols -> [Symbol] (18361.0) -
定義済みの全てのシンボルオブジェクトの配列を返します。
定義済みの全てのシンボルオブジェクトの配列を返します。
p Symbol.all_symbols #=> [:RUBY_PLATFORM, :RUBY_VERSION, ...]
リテラルで表記したシンボルのうち、コンパイル時に値が決まるものはその時に生成されます。
それ以外の式展開を含むリテラルや、メソッドで表記されたものは式の評価時に生成されます。
(何にも使われないシンボルは最適化により生成されないことがあります)
def number
'make_3'
end
p Symbol.all_symbols.select{|sym|sym.to_s.in... -
Net
:: POP3 . delete _ all(address , port = nil , account , password , isapop=false) -> () (18346.0) -
POP セッションを開始し、サーバ上のメールを全て消去します。
POP セッションを開始し、サーバ上のメールを全て消去します。
ブロックを与えられたときは消去する前に各メールを引数としてブロックを呼びだします。
メールは Net::POPMail のインスタンスとして渡されます。
port に nil を渡すと、適当なポート(通常は110、SSL利用時には 995)を
使います。
使用例:
require 'net/pop'
Net::POP3.delete_all(addr, nil, 'YourAccount', 'YourPassword') do |m|
puts m.pop
end
@param address P... -
Net
:: POP3 . delete _ all(address , port = nil , account , password , isapop=false) {|mail| . . . . } -> () (18346.0) -
POP セッションを開始し、サーバ上のメールを全て消去します。
POP セッションを開始し、サーバ上のメールを全て消去します。
ブロックを与えられたときは消去する前に各メールを引数としてブロックを呼びだします。
メールは Net::POPMail のインスタンスとして渡されます。
port に nil を渡すと、適当なポート(通常は110、SSL利用時には 995)を
使います。
使用例:
require 'net/pop'
Net::POP3.delete_all(addr, nil, 'YourAccount', 'YourPassword') do |m|
puts m.pop
end
@param address P... -
ThreadsWait
. all _ waits(*threads) -> () (18328.0) -
指定されたスレッドすべてが終了するまで待ちます。 ブロックが与えられた場合、スレッド終了時にブロックを評価します。
指定されたスレッドすべてが終了するまで待ちます。
ブロックが与えられた場合、スレッド終了時にブロックを評価します。
@param threads 終了するまでまつスレッドを一つもしくは複数指定します。
require 'thwait'
threads = []
5.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}
ThreadsWait.all_waits(*threads) {|th| printf("end %s\n", th.inspect) }
# 出力例
#=... -
ThreadsWait
. all _ waits(*threads) {|thread| . . . } -> () (18328.0) -
指定されたスレッドすべてが終了するまで待ちます。 ブロックが与えられた場合、スレッド終了時にブロックを評価します。
指定されたスレッドすべてが終了するまで待ちます。
ブロックが与えられた場合、スレッド終了時にブロックを評価します。
@param threads 終了するまでまつスレッドを一つもしくは複数指定します。
require 'thwait'
threads = []
5.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}
ThreadsWait.all_waits(*threads) {|th| printf("end %s\n", th.inspect) }
# 出力例
#=... -
RDoc
:: TopLevel . all _ classes _ and _ modules -> [RDoc :: NormalClass | RDoc :: SingleClass | RDoc :: NormalModule] (18307.0) -
RDoc が収集したクラス、モジュールを配列で返します。
RDoc が収集したクラス、モジュールを配列で返します。 -
Shell
:: ProcessController . wait _ to _ finish _ all _ process _ controllers -> () (18307.0) -
@todo
@todo -
CGI
:: Session . callback(dbman) (18304.0) -
-
Fiddle
:: CStruct . malloc -> Fiddle :: CStruct (18304.0) -
構造体のためのメモリを確保し、Fiddle::CStruct の(子孫クラスの) オブジェクトで返します。
構造体のためのメモリを確保し、Fiddle::CStruct の(子孫クラスの)
オブジェクトで返します。
C における
return (struct foo*)malloc(sizeof(struct foo));
というコードと対応していると言えます。 -
Fiddle
:: Pointer . malloc(size , free = nil) -> Fiddle :: Pointer (18304.0) -
与えられた長さ size のメモリ領域を確保し、それを表す Pointer オブジェクトを生成して返します。
与えられた長さ size のメモリ領域を確保し、それを表す Pointer オブジェクトを生成して返します。
@param size 確保したいメモリ領域のサイズを整数で指定します。
@param free GC 時に呼ばれる Pointer オブジェクトの free 関数を
Fiddle::Function オブジェクトか整数で指定します。 -
Gem
:: SourceIndex . from _ installed _ gems(*deprecated) -> Gem :: SourceIndex (18304.0) -
与えられたパスをもとに、インスタンスを作成するファクトリメソッドです。
与えられたパスをもとに、インスタンスを作成するファクトリメソッドです。
@param deprecated この引数は非推奨です。後方互換性のためにのみ提供されているので使用すべきではありません。
@see Gem::SourceIndex.from_gems_in -
Gem
:: SourceIndex . installed _ spec _ directories -> [String] (18304.0) -
gemspec ファイルがインストールされているディレクトリのリストを返します。
gemspec ファイルがインストールされているディレクトリのリストを返します。
@see Gem.#path -
IRB
:: ContextExtender . install _ extend _ commands -> object (18304.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 (18304.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... -
Shell
. install _ system _ commands(pre = "sys _ ") -> () (18304.0) -
system_path上にある全ての実行可能ファイルをShellに定義する. メソッ ド名は元のファイル名の頭にpreをつけたものとなる.
system_path上にある全ての実行可能ファイルをShellに定義する. メソッ
ド名は元のファイル名の頭にpreをつけたものとなる.
@param pre Shellに定義するメソッド名の先頭に付加される文字列を指定します。
使用例: ls -l | head -n 5 のような例。
require 'shell'
Shell.install_system_commands
sh = Shell.new
sh.verbose = false
sh.transact {
(sys_ls("-l") | sys_head("-n 5")).each {|l... -
Shell
:: CommandProcessor . install _ builtin _ commands -> () (18304.0) -
ビルトインコマンドを定義します。
ビルトインコマンドを定義します。 -
Shell
:: CommandProcessor . install _ system _ commands(prefix = "sys _ ") -> () (18304.0) -
全てのシステムコマンドをメソッドとして定義します。
全てのシステムコマンドをメソッドとして定義します。
既に定義されているコマンドを再定義することはありません。
デフォルトでは全てのコマンドに "sys_" というプレフィクスが付きます。
また、メソッド名として使用できない文字は全て "_" に置換してメソッドを定義します。
このメソッドの実行中に発生した例外は単に無視されます。
@param prefix プレフィクスを指定します。 -
Tracer
. display _ c _ call -> bool (18304.0) -
真ならば、ビルトインメソッドの呼び出しを表示します。 デフォルトは偽です。
真ならば、ビルトインメソッドの呼び出しを表示します。
デフォルトは偽です。 -
Tracer
. display _ c _ call=(flag) (18304.0) -
ビルトインメソッドの呼び出しを表示するかどうかを設定します。
ビルトインメソッドの呼び出しを表示するかどうかを設定します。
@param flag ビルトインメソッドの呼び出しを表示するならば、真を指定します。 -
Tracer
. display _ c _ call? -> bool (18304.0) -
真ならば、ビルトインメソッドの呼び出しを表示します。 デフォルトは偽です。
真ならば、ビルトインメソッドの呼び出しを表示します。
デフォルトは偽です。 -
Fiddle
:: Closure :: BlockCaller . new(ret , args , abi=Fiddle :: Function :: DEFAULT) { . . . } -> Fiddle :: Closure :: BlockCaller (9304.0) -
Ruby のブロックを呼び出す Fiddle::Closure オブジェクトを返します。
Ruby のブロックを呼び出す Fiddle::Closure オブジェクトを返します。
args、ret で関数の引数と返り値の型を指定します。
指定は Fiddle::Function.new と同様なので、そちら
を参照してください。
@param ret 返り値の型
@param args 引数の型を表す配列
@param abi 呼出規約 -
Gem
:: DependencyInstaller . new(options = {}) -> Gem :: DependencyInstaller (9304.0) -
自身を初期化します。
自身を初期化します。
オプションとして以下のものを利用できます。
: :cache_dir
*.gem ファイルを保存するディレクトリを指定します。
: :domain
:local (カレントディレクトリのみ検索します), :remote (Gem.sources を検索します),
:both (:local, :remote の両方を検索します) のいずれかを指定可能です。
: :env_shebang
Gem::Installer.new を参照してください。
: :force
バージョンチェックとセキュリティポリシーのチェックを行わずにインストールを実行します... -
Gem
:: Installer . new(gem , options = {}) -> Gem :: Installer (9304.0) -
@todo 書いてないオプションがいっぱいある
@todo 書いてないオプションがいっぱいある
与えられた引数で自身を初期化します。
@param gem インストール対象の Gem のパスを指定します。
@param options インストーラが使用するオプションをハッシュで指定します。
使用できるキーは以下の通りです。
: :env_shebang
コマンドのラッパーで shebang line に /usr/bin/env を使用します。
: :force
署名された Gem のみをインストールするというポリシー以外、
全てのバージョンチェックとセキュリティポリシーのチェックを行わない... -
SystemCallError
. new(errno) -> SystemCallError (9304.0) -
整数 errno に対応する Errno::EXXX オブジェクトを生成して返します。
整数 errno に対応する Errno::EXXX オブジェクトを生成して返します。
整数 errno をシステムコールで発生したエラーの原因を示すコードであると解釈し、
対応する例外クラスのインスタンスを生成して返します。
生成されるオブジェクトは SystemCallError の直接のインスタンスではなく、サブクラスのインスタンスです。
それらのサブクラスは Errno モジュール内に定義されています。
対応するサブクラスが存在しないコードを与えた場合には、 SystemCallError の直接のインスタンスが生成されます。
エラーコードの取り得る値および意味はシステムに依存し... -
SystemCallError
. new(error _ message) -> SystemCallError (9304.0) -
SystemCallError オブジェクトを生成して返します。
SystemCallError オブジェクトを生成して返します。
@param error_message エラーメッセージを表す文字列
例:
p SystemCallError.new("message")
# => #<SystemCallError: unknown error - message> -
SystemCallError
. new(error _ message , errno) -> SystemCallError (9304.0) -
整数 errno に対応する Errno::EXXX オブジェクトを生成して返します。
整数 errno に対応する Errno::EXXX オブジェクトを生成して返します。
整数 errno をシステムコールで発生したエラーの原因を示すコードであると解釈し、
対応する例外クラスのインスタンスを生成して返します。
生成されるオブジェクトは SystemCallError の直接のインスタンスではなく、サブクラスのインスタンスです。
それらのサブクラスは Errno モジュール内に定義されています。
対応するサブクラスが存在しないコードを与えた場合には、 SystemCallError の直接のインスタンスが生成されます。
エラーコードの取り得る値および意味はシステムに依存し... -
Gem
:: Installer . exec _ format -> String (9004.0) -
実行ファイル名のフォーマットを返します。
実行ファイル名のフォーマットを返します。
指定しない場合は ruby コマンドと同じフォーマットを使用します。 -
Gem
:: Installer . exec _ format=(format) (9004.0) -
実行ファイル名のフォーマットをセットします。
実行ファイル名のフォーマットをセットします。
@param format 実行ファイル名のフォーマットを指定します。 -
Gem
:: Installer . path _ warning -> bool (9004.0) -
この値が 真の場合は Gem.bindir が PATH に含まれていない場合に警告を表示します。
この値が 真の場合は Gem.bindir が PATH に含まれていない場合に警告を表示します。 -
Gem
:: Installer . path _ warning=(flag) (9004.0) -
Gem.bindir が PATH に含まれていない場合に警告を表示するかどうかセットします。
Gem.bindir が PATH に含まれていない場合に警告を表示するかどうかセットします。
@param flag 真を指定すると、Gem.bindir が PATH に含まれていない場合に警
告を表示するようになります。 -
Gem
:: Uninstaller . new(gem , options = {}) (9004.0) -
自身を初期化します。
自身を初期化します。
@param gem アンインストールする Gem を指定します。
@param options オプションを指定します。 -
SystemCallError
. ===(other) -> bool (9004.0) -
other が SystemCallError のサブクラスのインスタンスで、 かつ、other.errno の値が self::Errno と同じ場合に真を返します。そうでない場合は偽を返します。
other が SystemCallError のサブクラスのインスタンスで、
かつ、other.errno の値が self::Errno と同じ場合に真を返します。そうでない場合は偽を返します。
従って、特に other が self.kind_of?(other) である場合には Module#=== と同様に真を返します。
その他に、 Errno::EXXX::Errno == Errno::EYYY::Errno である場合にも Errno::EXXX == Errno::EYYY.new は真を返します。
エラー名は異なるがエラーコードは同じであるような Errno::EXX... -
Gem
:: SourceInfoCache . cache(all = false) -> Gem :: SourceInfoCache (325.0) -
自身のインスタンスを生成するためのメソッドです。
自身のインスタンスを生成するためのメソッドです。
@param all 真を指定すると、インスタンス生成時に全てのキャッシュを再作成します。 -
ACL
. new(list=nil , order = DENY _ ALLOW) -> ACL (322.0) -
新たな ACL オブジェクトを返します。
新たな ACL オブジェクトを返します。
list で許可/拒否するアドレスのリストを指定し、
order でデフォルトの挙動を指定します。
order に ACL::DENY_ALLOW を指定するとデフォルトで
すべてのアドレスを拒否します。ACL::ALLOW_DENY を指定すると
デフォルトですべてのアドレスを許可します。
require "drb/acl"
list = %w[
deny all
allow 192.168.1.1
allow ::ffff:192.168.1.2
allow 192.168.1.3
]
... -
Win32
:: Registry . create(key , subkey , desired = KEY _ ALL _ ACCESS , opt = REG _ OPTION _ RESERVED) (310.0) -
@todo
@todo
レジストリキー key 下にキー subkey を作成し,
開いたキーを表す Win32::Registry オブジェクトを返します。
key は親のキーを Win32::Registry オブジェクトで指定します。
親のキーには定義済キー HKEY_* を使用できます (⇒Win32::Registry::Constants)
サブキーが既に存在していればキーはただ開かれ,Win32::Registry#created?
メソッドが false を返します。
ブロックが与えられると,キーは自動的に閉じられます。 -
Win32
:: Registry . create(key , subkey , desired = KEY _ ALL _ ACCESS , opt = REG _ OPTION _ RESERVED) {|reg| . . . } (310.0) -
@todo
@todo
レジストリキー key 下にキー subkey を作成し,
開いたキーを表す Win32::Registry オブジェクトを返します。
key は親のキーを Win32::Registry オブジェクトで指定します。
親のキーには定義済キー HKEY_* を使用できます (⇒Win32::Registry::Constants)
サブキーが既に存在していればキーはただ開かれ,Win32::Registry#created?
メソッドが false を返します。
ブロックが与えられると,キーは自動的に閉じられます。 -
Psych
. load(yaml , filename = nil , fallback = false) -> object (304.0) -
YAML ドキュメントを Ruby のデータ構造(オブジェクト)に変換します。
YAML ドキュメントを Ruby のデータ構造(オブジェクト)に変換します。
入力に複数のドキュメントが含まれている場合は、先頭のものを変換して
返します。
filename はパース中に発生した例外のメッセージに用います。
@param yaml YAML ドキュメント(文字列 or IO オブジェクト)
@param filename Psych::SyntaxError 発生時にファイル名として表示する文字列。
@param fallback 引数 yaml に空のYAMLを指定した場合の戻り値を指定します。デフォルトは false です。
@raise Psych::Syn... -
REXML
:: Document . new(source = nil , context = {}) -> REXML :: Document (94.0) -
Document オブジェクトを生成します。
Document オブジェクトを生成します。
source には String、IO、REXML::Document のいずかが
指定できます。 REXML::Document を指定すると
コンテキストと要素、属性が複製されます。
文字列の場合はそれを XML と見なしてパースします。
IOの場合は、XML文書を読み出してパースします。
context で「コンテキスト」を指定します。テキストノードの空白や
特殊文字の取り扱いを Hash で指定します。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
空白を考慮して欲しい要素の名... -
REXML
:: Element . new(arg = UNDEFINED , parent = nil , context = nil) -> REXML :: Element (94.0) -
要素オブジェクトを生成します。
要素オブジェクトを生成します。
arg が文字列の場合、新たな要素の名前は arg に設定されます。
arg が REXML::Element オブジェクトの場合は、
新たな要素の名前、属性、context が arg のもので初期化されます。
parent で親ノードを指定します。
context には hash table で要素のコンテキストを指定します。
基本的には text node (REXML::Text) での特別な文字、特に空白について
の取り扱いを指定できます。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
... -
BigDecimal
. mode(s) -> Integer | nil (40.0) -
BigDecimal の計算処理の制御方法を設定、確認します。
BigDecimal の計算処理の制御方法を設定、確認します。
第2引数を省略、または nil を指定すると現状の設定値を返します。
@param s 制御方法の設定、確認を行う項目を BigDecimal::EXCEPTION_*、
BigDecimal::ROUND_MODE のいずれかで指定します。
@param v 引数 s が BigDecimal::ROUND_MODE の場合は
BigDecimal::ROUND_MODE 以外の BigDecimal::_ROUND* のいず
れかを指定します。指定した丸め処理が有効... -
BigDecimal
. mode(s , v) -> Integer | nil (40.0) -
BigDecimal の計算処理の制御方法を設定、確認します。
BigDecimal の計算処理の制御方法を設定、確認します。
第2引数を省略、または nil を指定すると現状の設定値を返します。
@param s 制御方法の設定、確認を行う項目を BigDecimal::EXCEPTION_*、
BigDecimal::ROUND_MODE のいずれかで指定します。
@param v 引数 s が BigDecimal::ROUND_MODE の場合は
BigDecimal::ROUND_MODE 以外の BigDecimal::_ROUND* のいず
れかを指定します。指定した丸め処理が有効... -
Rake
. application=(app) (40.0) -
現在の Rake アプリケーションをセットします。
現在の Rake アプリケーションをセットします。
@param app Rake::Application のインスタンスを指定します。
//emlist[][ruby]{
# Rakefile での記載例とする
require 'pp'
task default: :test_rake_app
task :test_rake_app do
app = Rake::Application.new
app.tty_output = true
Rake.application = app
pp Rake.application
end
# => #<Rake::App... -
IRB
:: ExtendCommandBundle . def _ extend _ command(cmd _ name , cmd _ class , load _ file = nil , *aliases) -> object (22.0) -
irb に cmd_name で指定したメソッドが実行できるように拡張します。
irb に cmd_name で指定したメソッドが実行できるように拡張します。
@param cmd_name メソッド名を Symbol か文字列で指定します。
cmd_class で指定するクラスの execute メソッドとして定
義してある必要があります。
@param cmd_class 指定した拡張が定義されたクラス名を Symbol、
String、Class のいずれかで指定します。
なお、このクラスは IRB::ExtendCommand ... -
Rake
:: PackageTask . new(name = nil , version = nil) {|t| . . . } -> Rake :: PackageTask (22.0) -
自身を初期化してタスクを定義します。
自身を初期化してタスクを定義します。
ブロックが与えられた場合は、自身をブロックパラメータとして
ブロックを評価します。
@param name パッケージ名を指定します。
@param version パッケージのバージョンを指定します。
':noversion' というシンボルを指定するとバージョン情報をセットしません。
//emlist[][ruby]{
# Rakefile での記載例とする
require 'rake/packagetask'
Rake::PackageTask.new("sample", "1.0.0") do |packa... -
RbConfig
. expand(val , config = CONFIG) -> String (22.0) -
与えられたパスを展開します。
与えられたパスを展開します。
RbConfig.expand("$(bindir)") # => /home/foobar/all-ruby/ruby19x/bin
@param val 展開したい変数名を Makefile に書く形式で指定します。
@param config 変数展開に使用する設定を Hash で指定します。
@see RbConfig::MAKEFILE_CONFIG -
ThreadsWait
. new(*threads) -> ThreadsWait (22.0) -
指定されたスレッドの終了をまつための、スレッド同期オブジェクトをつくります。
指定されたスレッドの終了をまつための、スレッド同期オブジェクトをつくります。
@param threads 終了を待つスレッドを一つもしくは複数指定します。
使用例
require 'thwait'
threads = []
5.times {|i|
threads << Thread.new { sleep 1; p Thread.current }
}
thall = ThreadsWait.new(*threads)
thall.all_waits{|th|
printf("end %s\n", th.inspect)
}
...