種類
- モジュール関数 (117)
- インスタンスメソッド (84)
- 文書 (71)
- ライブラリ (24)
- クラス (24)
クラス
- LocalJumpError (24)
- SystemExit (24)
- Thread (36)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - Interrupt (12)
-
NEWS for Ruby 2
. 2 . 0 (11) - Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (12)
- Ruby用語集 (12)
- Status (12)
- abort (24)
- exit! (12)
-
exit
_ value (12) - getoptlong (12)
- irb (12)
- kill (12)
- readline (12)
- reason (12)
-
ruby 1
. 6 feature (12) - status (12)
- success? (12)
- terminate (12)
- throw (12)
- timeout (21)
- trap (24)
- 制御構造 (12)
検索結果
先頭5件
-
Kernel
. # exit(status = true) -> () (18167.0) -
Rubyプログラムの実行を終了します。status として整 数が与えられた場合、その値を Ruby コマンドの終了ステータスとします。 デフォルトの終了ステータスは 0(正常終了)です。
...す。この値はCレベルの定数
EXIT_SUCCESS、EXIT_FAILURE の値なので、正確には環境依存です。
exit は例外 SystemExit を発生させ
ることによってプログラムの実行を終了させますので、
必要に応じて begin 節で捕捉することができま......ist[例][ruby]{
puts 'start'
begin
puts 'start1...'
exit
rescue SystemExit => err
puts "end1 with #{err.inspect}"
end
begin
puts 'start2...'
exit
ensure
puts 'end2...'
end
puts 'end' #実行されない
#=> start
# start1...
# end1 with #<SystemExit: exit>
# start2...
# end2.........#終了ステータス:0
//}
@see Kernel.#exit!,Kernel.#abort, d:spec/control#begin... -
Thread
# exit -> self (18131.0) -
スレッドの実行を終了させます。終了時に ensure 節が実行されます。
...#exit(0)
により終了します。
Kernel.#exit と違い例外 SystemExit を発生しません。
th1 = Thread.new do
begin
sleep 10
ensure
p "this will be displayed"
end
end
sleep 0.1
th1.kill
#=> "this will be displayed"
@see Kernel.#exit, Kernel.#exit!... -
Kernel
. # exit!(status = false) -> () (6149.0) -
Rubyプログラムの実行を即座に終了します。 status として整数が与えられた場合、その値を Ruby コマンドの終了ステータスとします。 デフォルトの終了ステータスは 1 です。
...0、 false の場合 1 を引数に指定したとみなされます。この値はCレベルの定数
EXIT_SUCCESS、EXIT_FAILURE の値なので、正確には環境依存です。
exit! は exit とは違って、例外処理などは一切行ないませ
ん。 Kernel.#fork の後、子プロ......T.sync = true #表示前に終了しないようにする
puts 'start'
begin
puts 'start1...'
exit!
ensure
puts 'end1...' #実行されない
end
puts 'end' #実行されない
#=> start
# start1...
#終了ステータス:1
//}
@see Kernel.#exit,Kernel.#abort,Kernel.#at_exit,Kernel.#fork... -
LocalJumpError
# exit _ value -> object (6125.0) -
例外 LocalJumpError を発生する原因となった break や return に渡した値を返します。
...例:
def foo
proc { return 10 }
end
begin
foo.call
rescue LocalJumpError => err
p err # => #<LocalJumpError: return from block-closure>
p err.reason # => :return
p err.exit_value # => 10
end
begin
Block.new { break 5 }.call
rescue Loca......lJumpError => err
p err # => #<LocalJumpError: break from block-closure>
p err.reason # => :break
p err.exit_value # => 5
end... -
Thread
# kill -> self (3031.0) -
スレッドの実行を終了させます。終了時に ensure 節が実行されます。
...#exit(0)
により終了します。
Kernel.#exit と違い例外 SystemExit を発生しません。
th1 = Thread.new do
begin
sleep 10
ensure
p "this will be displayed"
end
end
sleep 0.1
th1.kill
#=> "this will be displayed"
@see Kernel.#exit, Kernel.#exit!... -
Thread
# terminate -> self (3031.0) -
スレッドの実行を終了させます。終了時に ensure 節が実行されます。
...#exit(0)
により終了します。
Kernel.#exit と違い例外 SystemExit を発生しません。
th1 = Thread.new do
begin
sleep 10
ensure
p "this will be displayed"
end
end
sleep 0.1
th1.kill
#=> "this will be displayed"
@see Kernel.#exit, Kernel.#exit!... -
SystemExit
# status -> Integer (3030.0) -
例外オブジェクトに保存された終了ステータスを返します。
...します。
終了ステータスは Kernel.#exit や SystemExit.new などで設定されます。
例:
begin
exit 1
rescue SystemExit => err
p err.status # => 1
end
begin
raise SystemExit.new(1, "dummy exit")
rescue SystemExit => err
p err.status # => 1
end... -
SystemExit
# success? -> bool (3024.0) -
終了ステータスが正常終了を示す値ならば true を返します。
...値ならば true を返します。
大半のシステムでは、ステータス 0 が正常終了を表します。
例:
begin
exit true
rescue SystemExit => err
p err.success? # => true
end
begin
exit false
rescue SystemExit => err
p err.success? # => false
end... -
制御構造 (278.0)
-
制御構造 条件分岐: * if * unless * case 繰り返し: * while * until * for * break * next * redo * retry 例外処理: * raise * begin その他: * return * BEGIN * END
...ase
繰り返し:
* while
* until
* for
* break
* next
* redo
* retry
例外処理:
* raise
* begin
その他:
* return
* BEGIN
* END
Rubyでは(Cなどとは異なり)制御構造は式であって、何らかの値を返すものが
あります(返......した値が真の間、左辺を繰り返し実行します。
左辺の式が begin 節である場合にはそれを最初に一回評価してから繰り返します。
//emlist[例][ruby]{
send_request(data)
begin
res = get_response()
end while res == 'Continue'
//}
while 修飾した式......rror_type が省略された時は StandardError のサブクラスであ
る全ての例外を捕捉します。Rubyの組み込み例外は(SystemExit や
Interrupt のような脱出を目的としたものを除いて)
StandardError のサブクラスです。
例外クラスのクラス階層...