ライブラリ
- ビルトイン (396)
- forwardable (12)
-
io
/ console (36) - monitor (12)
- stringio (36)
- timeout (21)
クラス
-
ARGF
. class (24) - IO (300)
- Object (24)
- StringIO (36)
キーワード
-
$ _ (12) -
$ stdin (12) -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - ARGF (24)
- DATA (12)
- Forwardable (12)
- MonitorMixin (12)
-
NEWS for Ruby 2
. 0 . 0 (12) -
NEWS for Ruby 2
. 4 . 0 (9) -
NEWS for Ruby 3
. 0 . 0 (5) - Rubyの起動 (12)
- cooked (12)
- getbyte (12)
- getc (12)
- loop (24)
- new (12)
- noecho (12)
- open (24)
- pipe (96)
- popen (168)
- raw (12)
- readline (12)
-
ruby 1
. 6 feature (12) -
ruby 1
. 8 . 2 feature (12) - timeout (21)
検索結果
先頭5件
-
Timeout
. # timeout(sec , exception _ class = nil) {|i| . . . } -> object (108.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
...(t) {
# system だととまらない
# system("./loop.sh")
com = IO.popen("./loop.sh")
pid = com.pid
while line = com.gets
print line
end
}
rescue Timeout::Error => err
puts "timeout: shell execution."
Process.kill('SIGINT', pid)
printf "... -
Timeout
. # timeout(sec , exception _ class , message) {|i| . . . } -> object (108.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
...(t) {
# system だととまらない
# system("./loop.sh")
com = IO.popen("./loop.sh")
pid = com.pid
while line = com.gets
print line
end
}
rescue Timeout::Error => err
puts "timeout: shell execution."
Process.kill('SIGINT', pid)
printf "... -
IO
# cooked {|io| . . . } -> object (107.0) -
cooked モードを有効にして指定されたブロックを評価します。
...す。ブロックを評価した結果を返します。
@raise LocalJumpError ブロックを指定しなかった場合に発生します。
以下の例では、標準入力からエコーバック付きで文字列を一行読み込みます。
require "io/console"
STDIN.cooked(&:gets)... -
IO
# noecho {|io| . . . } -> object (107.0) -
文字入力時のエコーバックを無効に設定してブロックを評価します。
...す。ブロックを評価した結果を返します。
以下の例では、標準入力からエコーバックなしで文字列を一行読み込みます。
require "io/console"
STDIN.noecho(&:gets)
@raise LocalJumpError ブロックを指定しなかった場合に発生します。... -
IO
# raw(min: 1 , time: 0 , intr: false) {|io| . . . } -> object (107.0) -
raw モード、行編集を無効にして指定されたブロックを評価します。
...なかった場合に発生します。
@raise ArgumentError intr に true または false 以外の値を指定した場合に発生します。
以下の例では、標準入力からエコーバックなしで文字列を一行読み込みます。
require "io/console"
STDIN.raw(&:gets)... -
Kernel
. # loop { . . . } -> object | nil (107.0) -
(中断されない限り)永遠にブロックの評価を繰り返します。 ブロックが指定されなければ、代わりに Enumerator を返します。
...す。
ブロックが指定されなければ、代わりに Enumerator を返します。
//emlist[例][ruby]{
loop do
print "Input: "
line = gets
break if !line or line =~ /^qQ/
# ...
end
//}
与えられたブロック内で StopIteration を Kernel.#raise すると
ループを終了... -
StringIO
. open(string = & # 39;& # 39; , mode = & # 39;r+& # 39;) {|io| . . . } -> object (107.0) -
StringIO オブジェクトを生成して返します。
...][ruby]{
require 'stringio'
s = "foo"
io = StringIO.new(s)
p io.getc # => 102
p io.pos # => 1
p io.size # => 3
io << "bar"
p io.size # => 4
p s # => "fbar"
io.rewind
p io.gets # => "fbar"
StringIO.open("hoge"){|io|
p io.string # => "hoge"
}
//}... -
Timeout
. # timeout(sec , exception _ class = nil) {|i| . . . } -> object (107.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
...(t) {
# system だととまらない
# system("./loop.sh")
com = IO.popen("./loop.sh")
pid = com.pid
while line = com.gets
print line
end
}
rescue Timeout::Error => err
puts "timeout: shell execution."
Process.kill('SIGINT', pid)
printf "... -
ruby 1
. 6 feature (96.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...=> ruby 1.6.7 (2002-03-01) [i586-linux]
true
=> ruby 1.6.7 (2002-08-21) [i586-linux]
false
# : 2002-08-01 IO#read, gets ..., etc.
#
# File::NONBLOCK を指定した IO の読み込みで EWOULDBLOCK が発生すると、
# 途中まで読んだデータが失......upport for multipart form.
: 2002-04-10: Object#((<Object/remove_instance_variable>))
指定したインスタンス変数が定義されていない場合例外 NameError を起こ
すようになりました。((<ruby-bugs-ja:PR#216>))
Object.new.instance_eval {
p remove_i......lass
end
=> ruby 1.6.5 (2001-09-19) [i586-linux]
537760880
-:4: warning: already initialized constant A
537757180
Object
=> ruby 1.6.5 (2001-10-10) [i586-linux]
537760960
-:4: warning: already initialized constant A
537757200
Strin... -
NEWS for Ruby 2
. 0 . 0 (48.0) -
NEWS for Ruby 2.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...た
* 拡張: Kernel.#caller 第2引数で取得するスタックのサイズを指定できるようになりました
* 拡張: Object#to_enum Object#enum_for サイズの遅延評価のためにブロックを受け取るようになりました
* 非互換: Kernel.#system, Kernel.#e......ジナルの振舞いに戻りました。定義したときの名前ではなく呼び出したときの名前を返します。
* 非互換: Object#inspect は #to_s を呼び出さなくなりました。再定義された #to_s を呼び出すためです。
* LoadError
* 追加: Load......NilClass#to_h 空のハッシュを返します
* ObjectSpace::WeakMap
* 弱い参照を保持するための低レベルのクラスです。
* Proc
* 非互換: Proc#== と #eql? を削除。
* Process
* 追加: Process#getsid session id を取得します(unix のみ)。... -
ARGF (46.0)
-
スクリプトに指定した引数 (Object::ARGV を参照) をファイル名とみなして、 それらのファイルを連結した 1 つの仮想ファイルを表すオブジェクトです。 ARGV が空なら標準入力を対象とします。 ARGV を変更すればこのオブジェクトの動作に影響します。
...スクリプトに指定した引数
(Object::ARGV を参照) をファイル名とみなして、
それらのファイルを連結した 1 つの仮想ファイルを表すオブジェクトです。
ARGV が空なら標準入力を対象とします。
ARGV を変更すればこのオブジェク......トの動作に影響します。
//emlist[][ruby]{
while line = ARGF.gets
# do something
end
//}
は、
//emlist[][ruby]{
while argv = ARGV.shift
File.open(argv) {|file|
while line = file.gets
# do something
end
}
end
//}
のように動作します。
ARGF を処理する....../tmp/bar"]]
# ["/tmp/bar", []]
# 最後まで読んだ後 (ARGV が空) の動作
p ARGF.gets # => nil
p ARGF.filename # => "-"
//}
Kernel.#gets など一部の組み込み関数は
ARGF.gets などこのオブジェクトをレシーバとしたメソッドの省略形です。
ま...