るりまサーチ

最速Rubyリファレンスマニュアル検索!
84件ヒット [1-84件を表示] (0.065秒)
トップページ > クエリ:d[x] > クエリ:$DEBUG[x]

別のキーワード

  1. bigdecimal/util to_d
  2. float to_d
  3. rsa d=
  4. matrix d
  5. kernel $-d

種類

ライブラリ

モジュール

キーワード

検索結果

Kernel$$DEBUG -> bool (21214.0)

この値が真のときはインタプリタがデバッグモードになります。

...この値が真のときはインタプリタがデバッグモードになります。

コマンドラインオプション -d でセットされます。
スクリプトから代入することもできます。

デバッグモードでは、通常モードに比べて以下の違いがあり...
...になります。
Thread.abort_on_exception を
true にセットするのと同じ効果です。
* Thread.abort_on_exception= の効果がなくなります。
* 例外を捕捉しているかどうかに関係なく、
例外が発生した時点で $stderr にそれが出力されま...
...す。
スクリプトの処理は続行されます。

この変数はグローバルスコープです。

@see spec/rubycmd...

Kernel$$-d -> bool (6114.0)

この値が真のときはインタプリタがデバッグモードになります。

...この値が真のときはインタプリタがデバッグモードになります。

コマンドラインオプション -d でセットされます。
スクリプトから代入することもできます。

デバッグモードでは、通常モードに比べて以下の違いがあり...
...になります。
Thread.abort_on_exception を
true にセットするのと同じ効果です。
* Thread.abort_on_exception= の効果がなくなります。
* 例外を捕捉しているかどうかに関係なく、
例外が発生した時点で $stderr にそれが出力されま...
...す。
スクリプトの処理は続行されます。

この変数はグローバルスコープです。

@see spec/rubycmd...

制御構造 (78.0)

制御構造 条件分岐: * if * unless * case 繰り返し: * while * until * for * break * next * redo * retry 例外処理: * raise * begin その他: * return * BEGIN * END

...* unless
* case
繰り返し:
* while
* until
* for
* break
* next
* redo
* retry
例外処理:
* raise
* begin
その他:
* return
* BEGIN
* END

Rubyでは(Cなどとは異なり)制御構造は式であって、何らかの値を返すもの...
...入式の右辺に置くと
syntax error になります)。

RubyはC言語やPerlから引き継いだ制御構造を持ちますが、
その他にd:spec/call#blockという
制御構造の抽象化を援助する機能があります。ブロック付きメソッド呼び出しは
繰り返し...
..."debug\n" if $DEBUG
//}

文法:

式 if 式

右辺の条件が成立する時に、左辺の式を評価してその結果を返します。
条件が成立しなければ nil を返します。

====[a:unless] unless

//emlist[例][ruby]{
unless baby?
feed_meat
else
feed_milk
end
/...

irb (48.0)

irb は Interactive Ruby の略です。 irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。

...3
irb(main):002:0> class Foo
irb(main):003:1> def foo
irb(main):004:2> print 1
irb(main):005:2> end
irb(main):006:1> end
:foo
irb(main):007:0>

また irb コマンドは readline ライブラリにも対応しています。
readline ライブラリがインストールされ...
...-f ~/.irbrc を読み込まない
-m bc モード (分数と行列の計算ができる)
-d $DEBUG を true にする (ruby -d と同じ)
-w ruby -w と同じ
-W[level=2] ruby -W と同じ
-r library ruby -r と同...
...
--readline readlineライブラリを利用する
--noreadline readlineライブラリを利用しない。デフォルトでは
inf-ruby-mode 以外で readline ライブラリを利用する。
--prompt prompt-mode
--prompt-mode prompt-mode...
...ドラインオプション

irb [options] file_name opts
options:
-f ~/.irbrc を読み込まない
-d $DEBUG を true にする (ruby -d と同じ)
-w ruby -w と同じ
-W[level=2] ruby -W と同じ
-r library ruby -r と同...

Kernel.#caller(range) -> [String] | nil (18.0)

start 段上の呼び出し元の情報を $@ の形式のバックトレース(文字列の配列)として返します。

...

@see Kernel.#set_trace_func,Kernel.#raise,
Kernel.#caller_locations

//emlist[例][ruby]{
d
ef foo
p caller(0)
p caller(1)
p caller(2)
p caller(3)
p caller(4)
end

d
ef bar
foo
end

bar

#=> ["-:2:in `foo'", "-:10:in `bar'", "-:13:in `<main>'"]
# ["-:10:in `bar'", "-:13:in `<ma...
...す。

//emlist[例][ruby]{
d
ef parse_caller(at)
if /^(.+?):(\d+)(?::in `(.*)')?/ =~ at
file = $1
line = $2.to_i
method = $3
[file, line, method]
end
end

d
ef foo
p parse_caller(caller.first)
end

d
ef bar
foo
p parse_caller(caller.first)
end

bar
p parse_caller(caller.firs...
...=> ["-", 15, "bar"]
# ["-", 19, nil]
# nil
//}

以下は、$DEBUG が真の場合に役に立つ debug 関数
のサンプルです。

//emlist[例][ruby]{
$DEBUG
= true

d
ef debug(*args)
p [caller.first, *args] if $DEBUG
end

d
ebug "debug information"

#=> ["-:7", "debug information"]
//}...

絞り込み条件を変える

Kernel.#caller(start = 1) -> [String] | nil (18.0)

start 段上の呼び出し元の情報を $@ の形式のバックトレース(文字列の配列)として返します。

...

@see Kernel.#set_trace_func,Kernel.#raise,
Kernel.#caller_locations

//emlist[例][ruby]{
d
ef foo
p caller(0)
p caller(1)
p caller(2)
p caller(3)
p caller(4)
end

d
ef bar
foo
end

bar

#=> ["-:2:in `foo'", "-:10:in `bar'", "-:13:in `<main>'"]
# ["-:10:in `bar'", "-:13:in `<ma...
...す。

//emlist[例][ruby]{
d
ef parse_caller(at)
if /^(.+?):(\d+)(?::in `(.*)')?/ =~ at
file = $1
line = $2.to_i
method = $3
[file, line, method]
end
end

d
ef foo
p parse_caller(caller.first)
end

d
ef bar
foo
p parse_caller(caller.first)
end

bar
p parse_caller(caller.firs...
...=> ["-", 15, "bar"]
# ["-", 19, nil]
# nil
//}

以下は、$DEBUG が真の場合に役に立つ debug 関数
のサンプルです。

//emlist[例][ruby]{
$DEBUG
= true

d
ef debug(*args)
p [caller.first, *args] if $DEBUG
end

d
ebug "debug information"

#=> ["-:7", "debug information"]
//}...

Kernel.#caller(start, length) -> [String] | nil (18.0)

start 段上の呼び出し元の情報を $@ の形式のバックトレース(文字列の配列)として返します。

...

@see Kernel.#set_trace_func,Kernel.#raise,
Kernel.#caller_locations

//emlist[例][ruby]{
d
ef foo
p caller(0)
p caller(1)
p caller(2)
p caller(3)
p caller(4)
end

d
ef bar
foo
end

bar

#=> ["-:2:in `foo'", "-:10:in `bar'", "-:13:in `<main>'"]
# ["-:10:in `bar'", "-:13:in `<ma...
...す。

//emlist[例][ruby]{
d
ef parse_caller(at)
if /^(.+?):(\d+)(?::in `(.*)')?/ =~ at
file = $1
line = $2.to_i
method = $3
[file, line, method]
end
end

d
ef foo
p parse_caller(caller.first)
end

d
ef bar
foo
p parse_caller(caller.first)
end

bar
p parse_caller(caller.firs...
...=> ["-", 15, "bar"]
# ["-", 19, nil]
# nil
//}

以下は、$DEBUG が真の場合に役に立つ debug 関数
のサンプルです。

//emlist[例][ruby]{
$DEBUG
= true

d
ef debug(*args)
p [caller.first, *args] if $DEBUG
end

d
ebug "debug information"

#=> ["-:7", "debug information"]
//}...