るりまサーチ

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

別のキーワード

  1. _builtin to_proc
  2. _builtin proc
  3. proc curry
  4. httpserver mount_proc
  5. readline completion_proc

種類

ライブラリ

モジュール

キーワード

検索結果

Kernel.#trace_var(varname, hook) -> [String|Proc] (27246.0)

グローバル変数 varname への代入のフックを登録します。

...るたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。

trace_var
がフックするのは明示的な代入だけです。
フッ...
...解除するには、hook に nil を
指定するか、Kernel.#untrace_var を用います。

hook が nil ならば、設定されていた
hook をすべて解除してその配列を返します(ブロックで登録されていれば
Proc
オブジェクトで返されます)
それ以外は...
...hook フックになる文字列または Proc オブジェクトです。
@return フックを登録した場合は nil を返します。解除した場合は解除した
フックを並べた配列を返します。

//emlist[例][ruby]{
trace_var
(:$v){|val| puts "hook: $v=#{val.inspect}...

Kernel.#trace_var(varname) {|new_val| .... } -> nil (27146.0)

グローバル変数 varname への代入のフックを登録します。

...るたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。

trace_var
がフックするのは明示的な代入だけです。
フッ...
...解除するには、hook に nil を
指定するか、Kernel.#untrace_var を用います。

hook が nil ならば、設定されていた
hook をすべて解除してその配列を返します(ブロックで登録されていれば
Proc
オブジェクトで返されます)
それ以外は...
...hook フックになる文字列または Proc オブジェクトです。
@return フックを登録した場合は nil を返します。解除した場合は解除した
フックを並べた配列を返します。

//emlist[例][ruby]{
trace_var
(:$v){|val| puts "hook: $v=#{val.inspect}...

Kernel.#trace_var(varname, hook) -> nil (27146.0)

グローバル変数 varname への代入のフックを登録します。

...るたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。

trace_var
がフックするのは明示的な代入だけです。
フッ...
...解除するには、hook に nil を
指定するか、Kernel.#untrace_var を用います。

hook が nil ならば、設定されていた
hook をすべて解除してその配列を返します(ブロックで登録されていれば
Proc
オブジェクトで返されます)
それ以外は...
...hook フックになる文字列または Proc オブジェクトです。
@return フックを登録した場合は nil を返します。解除した場合は解除した
フックを並べた配列を返します。

//emlist[例][ruby]{
trace_var
(:$v){|val| puts "hook: $v=#{val.inspect}...

Kernel.#untrace_var(varname, hook = nil) -> [String|Proc] (15255.0)

グローバル変数 varname に関連付けられたフックを解除します。

...
@param hook 文字列または Proc オブジェクトです。
@return 解除されたフックの配列を返します。

//emlist[例][ruby]{
trace_var
(:$v){|val| print "hookA.#{val.inspect},\n" }
block = proc{|val| print "hookB.#{val.inspect}," }
trace_var
(:$v,&block)
$v = 'str' #=>...
...hookB."str",hookA."str",

untrace_var(:$v,block)
$v = 'str' #=> hookA."str",

trace_var
(:$v){|val| print "hookC.#{val.inspect}," }
p untrace_var(:$v) #=> [#<Proc:0x02b68f58@..:9>, #<Proc:0x02b6978c@..:3>]
$v = 'str' # なにも出力されない
//}

@see Kernel.#trace_var...

セキュリティモデル (108.0)

セキュリティモデル RubyにはCGI等のプログラミングを安全に行うことを助ける為に、セキュリティ 機構が備わっています。

...* 外部コマンド実行 (Kernel.#system, Kernel.#exec, Kernel.#`, Kernel.#spawn など)
* Kernel.#eval
* トップレベルへの Kernel.#load (第二引数を指定してラップすれば実行可能)
* Kernel.#require
* Kernel.#trap


==== レベル 2

===== 汚...
...* Process.fork Process.#setpgid Process.#setsid
Proc
ess.#setpriority Process.#egid= Process.#kill
* 危険なパスからの Kernel.#load
* 汚染された文字列を引数にしての Kernel.#load (ラップされていても)
* Kernel.#syscall
* Kernel.#exit!
* Kernel.#tra...
...れる。
* Proc はその時点でのセーフレベルを記憶する。
その Proc オブジェクトが call されると、記憶していたセーフレベルで実行される。
* 汚染された文字列を第二引数に指定して Kernel.#trap/Kernel.#trace_var
...
...* 外部コマンド実行 (Kernel.#system, Kernel.#exec, Kernel.#`, Kernel.#spawn など)
* Kernel.#eval
* トップレベルへの Kernel.#load (第二引数を指定してラップすれば実行可能)
* Kernel.#require
* Kernel.#trap


==== レベル 2

廃止さ...

絞り込み条件を変える