クラス
- Exception (1)
-
Gem
:: ConfigFile (1) -
IRB
:: Frame (1) -
Net
:: HTTP (1) -
RubyVM
:: InstructionSequence (4) - Thread (6)
-
Thread
:: Backtrace :: Location (7) - TracePoint (8)
- Tracer (18)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) -
DEFAULT
_ BACKTRACE (1) - Location (1)
- Ruby用語集 (1)
-
SC
_ 2 _ C _ BIND (1) -
SC
_ 2 _ C _ DEV (1) -
SC
_ 2 _ FORT _ DEV (1) -
SC
_ 2 _ LOCALEDEF (1) -
SC
_ 2 _ SW _ DEV (1) -
SC
_ ADVISORY _ INFO (1) -
SC
_ AIO _ PRIO _ DELTA _ MAX (1) -
SC
_ BC _ DIM _ MAX (1) -
SC
_ CHILD _ MAX (1) -
SC
_ DELAYTIMER _ MAX (1) -
SC
_ MAPPED _ FILES (1) -
SC
_ PRIORITIZED _ IO (1) -
SC
_ PRIORITY _ SCHEDULING (1) -
SC
_ READER _ WRITER _ LOCKS (1) -
SC
_ RE _ DUP _ MAX (1) -
SC
_ SAVED _ IDS (1) -
SC
_ SHARED _ MEMORY _ OBJECTS (1) -
SC
_ SPORADIC _ SERVER (1) -
SC
_ SYNCHRONIZED _ IO (1) -
SC
_ THREADS (1) -
SC
_ THREAD _ ATTR _ STACKADDR (1) -
SC
_ THREAD _ ATTR _ STACKSIZE (1) -
SC
_ THREAD _ CPUTIME (1) -
SC
_ THREAD _ DESTRUCTOR _ ITERATIONS (1) -
SC
_ THREAD _ KEYS _ MAX (1) -
SC
_ THREAD _ PRIORITY _ SCHEDULING (1) -
SC
_ THREAD _ PRIO _ INHERIT (1) -
SC
_ THREAD _ PRIO _ PROTECT (1) -
SC
_ THREAD _ PROCESS _ SHARED (1) -
SC
_ THREAD _ ROBUST _ PRIO _ INHERIT (1) -
SC
_ THREAD _ ROBUST _ PRIO _ PROTECT (1) -
SC
_ THREAD _ SAFE _ FUNCTIONS (1) -
SC
_ THREAD _ SPORADIC _ SERVER (1) -
SC
_ THREAD _ STACK _ MIN (1) -
SC
_ THREAD _ THREADS _ MAX (1) -
SC
_ TYPED _ MEMORY _ OBJECTS (1) -
SC
_ XOPEN _ REALTIME _ THREADS (1) - TracePoint (1)
- WUNTRACED (1)
-
absolute
_ path (1) -
add
_ filter (3) -
add
_ trace _ func (1) - backtrace (1)
-
backtrace
_ locations (3) -
base
_ label (1) - binding (1)
-
call
_ trace _ func (1) -
callee
_ id (1) - caller (3)
-
caller
_ locations (2) - debug (1)
-
defined
_ class (1) - disable (2)
- disasm (2)
- disassemble (2)
-
display
_ c _ call (1) -
display
_ c _ call= (1) -
display
_ c _ call? (1) -
display
_ process _ id (1) -
display
_ process _ id= (1) -
display
_ process _ id? (1) -
display
_ thread _ id (1) -
display
_ thread _ id= (1) -
display
_ thread _ id? (1) - enabled? (1)
-
get
_ thread _ no (1) - inspect (1)
- irb (1)
- label (1)
- lineno (1)
-
make
_ backtrace (1) -
method
_ id (1) - path (1)
- raise (1)
-
raised
_ exception (1) - rake (1)
-
rb
_ backtrace (1) -
rb
_ trace _ eval (1) -
remove
_ trace (1) -
ruby 1
. 8 . 4 feature (1) -
ruby 1
. 9 feature (1) -
set
_ backtrace (1) -
set
_ trace _ func (1) - stdout (2)
- stdout= (1)
-
stdout
_ mutex (1) -
to
_ s (1) -
trace
_ ev (1) -
trace
_ func (2) -
trace
_ var (3)
検索結果
先頭5件
-
debug (78019.0)
-
Ruby デバッガです。Ruby スクリプトのソースコードデバッグに使用します。
Ruby デバッガです。Ruby スクリプトのソースコードデバッグに使用します。
また、Emacs を使用したインタフェース rubydb3x.el が
https://github.com/ruby/elisp にあるので、活用してください。
=== 使い方
$ ruby -rdebug foo.rb
または、Emacs から
M-x load-library rubydb3x.el
M-x rubydb
=== デバッグコマンド
以下は、デバッガで使用できるコマンド名とその用法の一覧です。
各コマンド名には省略形があります。
ここに挙げたもの以外を入力し... -
Net
:: HTTP # trace(path , initheader = nil) -> Net :: HTTPResponse (54670.0) -
サーバの path に TRACE リクエストを ヘッダを initheader として送ります。
サーバの path に TRACE リクエストを
ヘッダを initheader として送ります。
レスポンスを Net::HTTPResponse のオブジェクト
で返します。
@param path リクエストを送るパスを文字列で与えます。
@param initheader リクエストのヘッダを「文字列=>文字列」の
ハッシュで与えます。
@see Net::HTTP::Trace -
Thread
# add _ trace _ func(pr) -> Proc (36748.0) -
スレッドにトレース用ハンドラを追加します。
スレッドにトレース用ハンドラを追加します。
追加したハンドラを返します。
@param pr トレースハンドラ(Proc オブジェクト)
//emlist[例][ruby]{
th = Thread.new do
class Trace
end
43.to_s
end
th.add_trace_func lambda {|*arg| p arg }
th.join
# => ["line", "example.rb", 4, nil, #<Binding:0x00007f98e107d0d8>, nil]
# => ["c-call", "example.rb", 4, ... -
Process
:: WUNTRACED -> Integer (36649.0) -
Process.#waitpid の第二引数に指定するフラグです。 このフラグが指定された場合、waitpid は停止しているだけで 終了していない子プロセスのプロセス ID も返すようになります。 trace されている子プロセスの ID は返しません。
Process.#waitpid の第二引数に指定するフラグです。
このフラグが指定された場合、waitpid は停止しているだけで
終了していない子プロセスのプロセス ID も返すようになります。
trace されている子プロセスの ID は返しません。
include Process
pid = fork{ Process.kill('SIGSTOP', Process.pid) }
p pid #=> 4336
p waitpid2(pid, WUNTRACED) #=> [4336, #<Process::Statu... -
Gem
:: ConfigFile :: DEFAULT _ BACKTRACE -> false (36601.0) -
バックトレースが表示されるかどうかのデフォルト値です。
バックトレースが表示されるかどうかのデフォルト値です。 -
Thread
# backtrace _ locations(range) -> [Thread :: Backtrace :: Location] | nil (27901.0) -
スレッドの現在のバックトレースを Thread::Backtrace::Location の配 列で返します。
スレッドの現在のバックトレースを Thread::Backtrace::Location の配
列で返します。
引数で指定した値が範囲外の場合、スレッドがすでに終了している場合は nil
を返します。
@param start 開始フレームの位置を数値で指定します。
@param length 取得するフレームの個数を指定します。
@param range 取得したいフレームの範囲を示す Range オブジェクトを指定します。
Kernel.#caller_locations と似ていますが、本メソッドは self に限定
した情報を返します。
//emlist[例][ruby]... -
Thread
# backtrace _ locations(start = 0 , length = nil) -> [Thread :: Backtrace :: Location] | nil (27901.0) -
スレッドの現在のバックトレースを Thread::Backtrace::Location の配 列で返します。
スレッドの現在のバックトレースを Thread::Backtrace::Location の配
列で返します。
引数で指定した値が範囲外の場合、スレッドがすでに終了している場合は nil
を返します。
@param start 開始フレームの位置を数値で指定します。
@param length 取得するフレームの個数を指定します。
@param range 取得したいフレームの範囲を示す Range オブジェクトを指定します。
Kernel.#caller_locations と似ていますが、本メソッドは self に限定
した情報を返します。
//emlist[例][ruby]... -
TracePoint
# binding -> Binding (27637.0) -
発生したイベントによって生成された Binding オブジェクトを返します。
発生したイベントによって生成された Binding オブジェクトを返します。
//emlist[例][ruby]{
def foo(ret)
ret
end
trace = TracePoint.new(:call) do |tp|
p tp.binding.local_variables # => [:ret]
end
trace.enable
foo 1
//} -
Tracer
# trace _ func(event , file , line , id , binding , klass , *) -> object | nil (27604.0) -
@todo
@todo -
TracePoint
# disable -> bool (27481.0) -
self のトレースを無効にします。
self のトレースを無効にします。
実行前の TracePoint#enabled? を返します。(トレースが既に有効であっ
た場合は true を返します。そうでなければ false を返します)
//emlist[例][ruby]{
trace.enabled? # => true
trace.disable # => false (実行前の状態)
trace.enabled? # => false
trace.disable # => false
//}
ブロックが与えられた場合、ブロック内でのみトレースが無効になります。
この場合はブロックの評価結果を返します。
//e... -
TracePoint
# disable { . . . } -> object (27481.0) -
self のトレースを無効にします。
self のトレースを無効にします。
実行前の TracePoint#enabled? を返します。(トレースが既に有効であっ
た場合は true を返します。そうでなければ false を返します)
//emlist[例][ruby]{
trace.enabled? # => true
trace.disable # => false (実行前の状態)
trace.enabled? # => false
trace.disable # => false
//}
ブロックが与えられた場合、ブロック内でのみトレースが無効になります。
この場合はブロックの評価結果を返します。
//e... -
Thread
# set _ trace _ func(pr) -> Proc | nil (27430.0) -
スレッドにトレース用ハンドラを設定します。
スレッドにトレース用ハンドラを設定します。
nil を渡すとトレースを解除します。
設定したハンドラを返します。
//emlist[例][ruby]{
th = Thread.new do
class Trace
end
2.to_s
Thread.current.set_trace_func nil
3.to_s
end
th.set_trace_func lambda {|*arg| p arg }
th.join
# => ["line", "example.rb", 2, nil, #<Binding:0x00007fc8de87cb08>, nil]
#... -
TracePoint
# defined _ class -> Class | module (27391.0) -
メソッドを定義したクラスかモジュールを返します。
メソッドを定義したクラスかモジュールを返します。
//emlist[例][ruby]{
class C; def foo; end; end
trace = TracePoint.new(:call) do |tp|
p tp.defined_class # => C
end.enable do
C.new.foo
end
//}
メソッドがモジュールで定義されていた場合も(include に関係なく)モジュー
ルを返します。
//emlist[例][ruby]{
module M; def foo; end; end
class C; include M; end;
trac... -
TracePoint
# callee _ id -> Symbol | nil (27337.0) -
イベントが発生したメソッドの呼ばれた名前を Symbol で返します。 トップレベルであった場合は nil を返します。
イベントが発生したメソッドの呼ばれた名前を Symbol で返します。
トップレベルであった場合は nil を返します。
@raise RuntimeError イベントフックの外側で実行した場合に発生します。
//emlist[][ruby]{
class C
def method_name
end
alias alias_name method_name
end
trace = TracePoint.new(:call) do |tp|
p [tp.method_id, tp.callee_id] # => [:method_name, :alias_name]
e... -
TracePoint
# method _ id -> Symbol | nil (27337.0) -
イベントが発生したメソッドの定義時の名前を Symbol で返します。 トップレベルであった場合は nil を返します。
イベントが発生したメソッドの定義時の名前を Symbol で返します。
トップレベルであった場合は nil を返します。
@raise RuntimeError イベントフックの外側で実行した場合に発生します。
//emlist[][ruby]{
class C
def method_name
end
alias alias_name method_name
end
trace = TracePoint.new(:call) do |tp|
p [tp.method_id, tp.callee_id] # => [:method_name, :alias_name]
e... -
TracePoint
# raised _ exception -> Exception (27337.0) -
発生した例外を返します。
発生した例外を返します。
@raise RuntimeError :raise イベントのためのイベントフックの外側で実行し
た場合に発生します。
//emlist[例][ruby]{
trace = TracePoint.new(:raise) do |tp|
tp.raised_exception # => #<ZeroDivisionError: divided by 0>
end
trace.enable
begin
0/0
rescue
end
//} -
Tracer
. add _ filter {|event , file , line , id , binding , klass| . . . . } (27319.0) -
トレース出力するかどうかを決定するフィルタを追加します。 何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。 与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば トレースは出力されます。
トレース出力するかどうかを決定するフィルタを追加します。
何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。
与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば
トレースは出力されます。
フィルタは複数追加でき、
そのうち一つでも偽を返すとトレースの出力は抑制されます。
@param proc トレース出力するかどうかを決定する手続きオブジェクトを指定します。
通常、true か falseを返す必要があります。
フィルタ手続きは引数として event, file, line, id, binding, klass の... -
Tracer
. add _ filter(proc) (27319.0) -
トレース出力するかどうかを決定するフィルタを追加します。 何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。 与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば トレースは出力されます。
トレース出力するかどうかを決定するフィルタを追加します。
何もフィルタを与えない場合はすべての行についてトレース情報が出力されます。
与えられた手続き(ブロックまたはProcオブジェクト)が真を返せば
トレースは出力されます。
フィルタは複数追加でき、
そのうち一つでも偽を返すとトレースの出力は抑制されます。
@param proc トレース出力するかどうかを決定する手続きオブジェクトを指定します。
通常、true か falseを返す必要があります。
フィルタ手続きは引数として event, file, line, id, binding, klass の... -
Thread
# backtrace -> [String] | nil (27301.0) -
スレッドの現在のバックトレースを返します。
スレッドの現在のバックトレースを返します。
スレッドがすでに終了している場合は nil を返します。
//emlist[例][ruby]{
class C1
def m1
sleep 5
end
def m2
m1
end
end
th = Thread.new {C1.new.m2; Thread.stop}
th.backtrace
# => [
# [0] "(irb):3:in `sleep'",
# [1] "(irb):3:in `m1'",
# [2] "(irb):6:in `m2'",
# [3] ... -
TracePoint
# enabled? -> bool (27301.0) -
self のトレースが有効な場合に true を、そうでない場合に false を返しま す。
self のトレースが有効な場合に true を、そうでない場合に false を返しま
す。
@see TracePoint#enable, TracePoint#disable -
Tracer
# add _ filter(p = proc) (27301.0) -
@todo
@todo
フィルターを追加します。
@param p Proc オブジェクトを指定します。 -
Tracer
# get _ thread _ no -> Integer (27301.0) -
@todo
@todo -
Tracer
# stdout -> IO (27301.0) -
@see Tracer.stdout
@see Tracer.stdout -
Tracer
. display _ c _ call -> bool (27301.0) -
真ならば、ビルトインメソッドの呼び出しを表示します。 デフォルトは偽です。
真ならば、ビルトインメソッドの呼び出しを表示します。
デフォルトは偽です。 -
Tracer
. display _ c _ call=(flag) (27301.0) -
ビルトインメソッドの呼び出しを表示するかどうかを設定します。
ビルトインメソッドの呼び出しを表示するかどうかを設定します。
@param flag ビルトインメソッドの呼び出しを表示するならば、真を指定します。 -
Tracer
. display _ c _ call? -> bool (27301.0) -
真ならば、ビルトインメソッドの呼び出しを表示します。 デフォルトは偽です。
真ならば、ビルトインメソッドの呼び出しを表示します。
デフォルトは偽です。 -
Tracer
. display _ process _ id -> bool (27301.0) -
真ならば、プロセス ID を表示します。 デフォルトは、偽です。
真ならば、プロセス ID を表示します。
デフォルトは、偽です。 -
Tracer
. display _ process _ id=(flag) (27301.0) -
プロセス ID を表示するかどうかを設定します。
プロセス ID を表示するかどうかを設定します。
@param flag プロセス ID を表示するならば、真を指定します。 -
Tracer
. display _ process _ id? -> bool (27301.0) -
真ならば、プロセス ID を表示します。 デフォルトは、偽です。
真ならば、プロセス ID を表示します。
デフォルトは、偽です。 -
Tracer
. display _ thread _ id -> bool (27301.0) -
真ならば、スレッド ID を表示します。 デフォルトは、真です。
真ならば、スレッド ID を表示します。
デフォルトは、真です。 -
Tracer
. display _ thread _ id=(flag) (27301.0) -
スレッド ID を表示するかどうかを設定します。
スレッド ID を表示するかどうかを設定します。
@param flag スレッド ID を表示するならば、真を指定します。 -
Tracer
. display _ thread _ id? -> bool (27301.0) -
真ならば、スレッド ID を表示します。 デフォルトは、真です。
真ならば、スレッド ID を表示します。
デフォルトは、真です。 -
Tracer
. stdout -> object (27301.0) -
トレース出力先を参照します。
トレース出力先を参照します。 -
Tracer
. stdout=(fp) (27301.0) -
トレース出力先を変更します。
トレース出力先を変更します。
@param fp 新しいトレース出力先を指定します。
require 'tracer'
fp = File.open('temptrace.txt', "w")
Tracer.stdout = fp
Tracer.on {
puts "Hello"
}
fp.close -
Tracer
. stdout _ mutex -> Mutex (27301.0) -
@todo
@todo -
static VALUE trace
_ ev(struct trace _ data *data) (19201.0) -
-
static void call
_ trace _ func(char *event , NODE *pos , VALUE self , ID id , VALUE klass) (18949.0) -
評価器の動作をフックする手続き trace_func を評価します。
評価器の動作をフックする手続き trace_func を評価します。 -
Exception
# backtrace _ locations -> [Thread :: Backtrace :: Location] (18901.0) -
バックトレース情報を返します。Exception#backtraceに似ていますが、 Thread::Backtrace::Location の配列を返す点が異なります。
バックトレース情報を返します。Exception#backtraceに似ていますが、
Thread::Backtrace::Location の配列を返す点が異なります。
現状では Exception#set_backtrace によって戻り値が変化する事はあり
ません。
//emlist[例: test.rb][ruby]{
require "date"
def check_long_month(month)
return if Date.new(2000, month, -1).day == 31
raise "#{month} is not long month"
end
... -
IRB
:: Frame # trace _ func(event , file , line , id , binding) -> Binding (18604.0) -
ライブラリ内部で使用します。
ライブラリ内部で使用します。 -
static VALUE make
_ backtrace(void) (18601.0) -
-
static void rb
_ trace _ eval(VALUE cmd , VALUE val) (18601.0) -
-
static void remove
_ trace(struct global _ variable *var) (18601.0) -
-
static void set
_ backtrace(VALUE info , VALUE bt) (18601.0) -
-
void rb
_ backtrace(void) (18601.0) -
-
RubyVM
:: InstructionSequence . disasm(body) -> String (18373.0) -
引数 body で指定したオブジェクトから作成した RubyVM::InstructionSequence オブジェクトを人間が読める形式の文字 列に変換して返します。
引数 body で指定したオブジェクトから作成した
RubyVM::InstructionSequence オブジェクトを人間が読める形式の文字
列に変換して返します。
@param body Proc、Method オブジェクトを指定します。
例1:Proc オブジェクトを指定した場合
# /tmp/proc.rb
p = proc { num = 1 + 2 }
puts RubyVM::InstructionSequence.disasm(p)
出力:
== disasm: <RubyVM::InstructionSequence:block in <main... -
RubyVM
:: InstructionSequence . disassemble(body) -> String (18373.0) -
引数 body で指定したオブジェクトから作成した RubyVM::InstructionSequence オブジェクトを人間が読める形式の文字 列に変換して返します。
引数 body で指定したオブジェクトから作成した
RubyVM::InstructionSequence オブジェクトを人間が読める形式の文字
列に変換して返します。
@param body Proc、Method オブジェクトを指定します。
例1:Proc オブジェクトを指定した場合
# /tmp/proc.rb
p = proc { num = 1 + 2 }
puts RubyVM::InstructionSequence.disasm(p)
出力:
== disasm: <RubyVM::InstructionSequence:block in <main... -
Kernel
. # trace _ var(varname) {|new _ val| . . . . } -> nil (18364.0) -
グローバル変数 varname への代入のフックを登録します。
グローバル変数 varname への代入のフックを登録します。
ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。
この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。
trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。
フックを解除するには、hook に n... -
Kernel
. # trace _ var(varname , hook) -> [String|Proc] (18364.0) -
グローバル変数 varname への代入のフックを登録します。
グローバル変数 varname への代入のフックを登録します。
ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。
この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。
trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。
フックを解除するには、hook に n... -
Kernel
. # trace _ var(varname , hook) -> nil (18364.0) -
グローバル変数 varname への代入のフックを登録します。
グローバル変数 varname への代入のフックを登録します。
ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。
この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。
trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。
フックを解除するには、hook に n... -
RubyVM
:: InstructionSequence # disasm -> String (18319.0) -
self が表す命令シーケンスを人間が読める形式の文字列に変換して返します。
self が表す命令シーケンスを人間が読める形式の文字列に変換して返します。
puts RubyVM::InstructionSequence.compile('1 + 2').disasm
出力:
== disasm: <RubyVM::InstructionSequence:<compiled>@<compiled>>==========
0000 trace 1 ( 1)
0002 putobject 1
0004 putobje... -
RubyVM
:: InstructionSequence # disassemble -> String (18319.0) -
self が表す命令シーケンスを人間が読める形式の文字列に変換して返します。
self が表す命令シーケンスを人間が読める形式の文字列に変換して返します。
puts RubyVM::InstructionSequence.compile('1 + 2').disasm
出力:
== disasm: <RubyVM::InstructionSequence:<compiled>@<compiled>>==========
0000 trace 1 ( 1)
0002 putobject 1
0004 putobje... -
TracePoint (18157.0)
-
Kernel.#set_trace_func と同様の機能をオブジェクト指向的な API で 提供するクラスです。
Kernel.#set_trace_func と同様の機能をオブジェクト指向的な API で
提供するクラスです。
//emlist[例:例外に関する情報を収集する][ruby]{
trace = TracePoint.new(:raise) do |tp|
p [tp.lineno, tp.event, tp.raised_exception]
end
# => #<TracePoint:0x007f786a452448>
trace.enable
# => false
0 / 0
# => [5, :raise, #<ZeroDivisionError: divided by 0... -
Thread
:: Backtrace :: Location (18019.0) -
Ruby のフレームを表すクラスです。
Ruby のフレームを表すクラスです。
Kernel.#caller_locations から生成されます。
//emlist[例1][ruby]{
# caller_locations.rb
def a(skip)
caller_locations(skip)
end
def b(skip)
a(skip)
end
def c(skip)
b(skip)
end
c(0..2).map do |call|
puts call.to_s
end
//}
例1の実行結果:
caller_locations.rb:2:in `a'
caller_locations... -
Thread
:: Backtrace :: Location # absolute _ path -> String (18001.0) -
self が表すフレームの絶対パスを返します。
self が表すフレームの絶対パスを返します。
//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end
Foo.new(0..2).locations.map do |call|
puts call.absolute_path
end
# => /path/to/foo.rb
# /path/to/foo.rb
# /path/to/foo.rb
//}
@see... -
Thread
:: Backtrace :: Location # base _ label -> String (18001.0) -
self が表すフレームの基本ラベルを返します。通常、 Thread::Backtrace::Location#label から修飾を取り除いたもので構成 されます。
self が表すフレームの基本ラベルを返します。通常、
Thread::Backtrace::Location#label から修飾を取り除いたもので構成
されます。
//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end
Foo.new(0..2).locations.map do |call|
puts call.base_label
end
# => init... -
Thread
:: Backtrace :: Location # inspect -> String (18001.0) -
Thread::Backtrace::Location#to_s の結果を人間が読みやすいような文 字列に変換したオブジェクトを返します。
Thread::Backtrace::Location#to_s の結果を人間が読みやすいような文
字列に変換したオブジェクトを返します。
//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end
Foo.new(0..2).locations.map do |call|
puts call.inspect
end
# => "path/to/foo.rb:5:in ... -
Thread
:: Backtrace :: Location # label -> String (18001.0) -
self が表すフレームのラベルを返します。通常、メソッド名、クラス名、モ ジュール名などで構成されます。
self が表すフレームのラベルを返します。通常、メソッド名、クラス名、モ
ジュール名などで構成されます。
例: Thread::Backtrace::Location の例1を用いた例
//emlist[][ruby]{
loc = c(0..1).first
loc.label # => "a"
//}
@see Thread::Backtrace::Location#base_label -
Thread
:: Backtrace :: Location # lineno -> Integer (18001.0) -
self が表すフレームの行番号を返します。
self が表すフレームの行番号を返します。
例: Thread::Backtrace::Location の例1を用いた例
//emlist[][ruby]{
loc = c(0..1).first
loc.lineno # => 2
//} -
Thread
:: Backtrace :: Location # path -> String (18001.0) -
self が表すフレームのファイル名を返します。
self が表すフレームのファイル名を返します。
例: Thread::Backtrace::Location の例1を用いた例
//emlist[][ruby]{
loc = c(0..1).first
loc.path # => "caller_locations.rb"
//}
@see Thread::Backtrace::Location#absolute_path -
Thread
:: Backtrace :: Location # to _ s -> String (18001.0) -
self が表すフレームを Kernel.#caller と同じ表現にした文字列を返し ます。
self が表すフレームを Kernel.#caller と同じ表現にした文字列を返し
ます。
//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end
Foo.new(0..2).locations.map do |call|
puts call.to_s
end
# => path/to/foo.rb:5:in `initialize'
# path/to/foo... -
Etc
:: SC _ 2 _ C _ BIND -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ 2 _ C _ DEV -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ 2 _ FORT _ DEV -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ 2 _ LOCALEDEF -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ 2 _ SW _ DEV -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ ADVISORY _ INFO -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ AIO _ PRIO _ DELTA _ MAX -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ BC _ DIM _ MAX -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ CHILD _ MAX -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ DELAYTIMER _ MAX -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ MAPPED _ FILES -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ PRIORITIZED _ IO -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ PRIORITY _ SCHEDULING -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ READER _ WRITER _ LOCKS -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ RE _ DUP _ MAX -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ SAVED _ IDS -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ SHARED _ MEMORY _ OBJECTS -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ SPORADIC _ SERVER -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ SYNCHRONIZED _ IO -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREADS -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ ATTR _ STACKADDR -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ ATTR _ STACKSIZE -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ CPUTIME -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ DESTRUCTOR _ ITERATIONS -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ KEYS _ MAX -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ PRIORITY _ SCHEDULING -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ PRIO _ INHERIT -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ PRIO _ PROTECT -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ PROCESS _ SHARED -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ ROBUST _ PRIO _ INHERIT -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ ROBUST _ PRIO _ PROTECT -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ SAFE _ FUNCTIONS -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ SPORADIC _ SERVER -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ STACK _ MIN -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ THREADS _ MAX -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ TYPED _ MEMORY _ OBJECTS -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ XOPEN _ REALTIME _ THREADS -> Integer (9325.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Thread
# raise(error _ type , message , traceback) -> () (9301.0) -
自身が表すスレッドで強制的に例外を発生させます。
自身が表すスレッドで強制的に例外を発生させます。
@param error_type Kernel.#raise を参照してください。
@param message Kernel.#raise を参照してください。
@param traceback Kernel.#raise を参照してください。
Thread.new {
sleep 1
Thread.main.raise "foobar"
}
begin
sleep
rescue
p $!, $@
end
=> #<RuntimeError: foobar>
[... -
Ruby用語集 (715.0)
-
Ruby用語集 A B C D E F G I J M N O R S Y
Ruby用語集
A B C D E F G I J M N O R S Y
a ka sa ta na ha ma ya ra wa
=== 記号・数字
: %記法
: % notation
「%」記号で始まる多種多様なリテラル記法の総称。
参照:d:spec/literal#percent
: 0 オリジン
: zero-based
番号が 0 から始まること。
例えば、
Array や Vector、Matrix などの要素の番号、
String における文字の位置、
といったものは 0 オリジンである。
: 1 オリジン
: one-based
... -
Kernel
. # caller _ locations(range) -> [Thread :: Backtrace :: Location] | nil (601.0) -
現在のフレームを Thread::Backtrace::Location の配列で返します。引 数で指定した値が範囲外の場合は nil を返します。
現在のフレームを Thread::Backtrace::Location の配列で返します。引
数で指定した値が範囲外の場合は nil を返します。
@param start 開始フレームの位置を数値で指定します。
@param length 取得するフレームの個数を指定します。
@param range 取得したいフレームの範囲を示す Range オブジェクトを指定します。
//emlist[例][ruby]{
def test1(start, length)
locations = caller_locations(start, length)
p locations
...