55件ヒット
[1-55件を表示]
(0.050秒)
種類
- モジュール関数 (44)
- インスタンスメソッド (11)
クラス
- Object (11)
モジュール
- Kernel (44)
キーワード
- freeze (11)
-
untrace
_ var (11)
検索結果
先頭5件
-
Kernel
. # trace _ var(varname , hook) -> [String|Proc] (18223.0) -
グローバル変数 varname への代入のフックを登録します。
...」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。
この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの......合はRubyコードとして評価されます。
trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。
フックを解除するには、hook に nil を
指定するか、Kernel.#untrace_var を用います。
hook が nil ならば、設定......(ブロックで登録されていれば
Proc オブジェクトで返されます)
それ以外は、nil を返します。
@param varname グローバル変数名を文字列か Symbol で指定します。
@param hook フックになる文字列または Proc オブジェクトです。
@return... -
Kernel
. # trace _ var(varname) {|new _ val| . . . . } -> nil (18123.0) -
グローバル変数 varname への代入のフックを登録します。
...」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。
この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの......合はRubyコードとして評価されます。
trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。
フックを解除するには、hook に nil を
指定するか、Kernel.#untrace_var を用います。
hook が nil ならば、設定......(ブロックで登録されていれば
Proc オブジェクトで返されます)
それ以外は、nil を返します。
@param varname グローバル変数名を文字列か Symbol で指定します。
@param hook フックになる文字列または Proc オブジェクトです。
@return... -
Kernel
. # trace _ var(varname , hook) -> nil (18123.0) -
グローバル変数 varname への代入のフックを登録します。
...」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。
この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの......合はRubyコードとして評価されます。
trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。
フックを解除するには、hook に nil を
指定するか、Kernel.#untrace_var を用います。
hook が nil ならば、設定......(ブロックで登録されていれば
Proc オブジェクトで返されます)
それ以外は、nil を返します。
@param varname グローバル変数名を文字列か Symbol で指定します。
@param hook フックになる文字列または Proc オブジェクトです。
@return... -
Kernel
. # untrace _ var(varname , hook = nil) -> [String|Proc] (6232.0) -
グローバル変数 varname に関連付けられたフックを解除します。
...@param varname グローバル変数名を文字列か Symbol で指定します。
@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... -
Object
# freeze -> self (50.0) -
オブジェクトを凍結(内容の変更を禁止)します。
...ら Kernel.#trace_var が使えます。
@return self を返します。
//emlist[][ruby]{
a1 = "foo".freeze
a1 = "bar"
p a1 #=> "bar"
a2 = "foo".freeze
a2.replace("bar") # can't modify frozen String (RuntimeError)
//}
凍結を解除することはできませんが、Object#dup を使えばほ......ます。
//emlist[][ruby]{
a = [1].freeze
p a.frozen? #=> true
a[0] = "foo"
p a # can't modify frozen Array (RuntimeError)
b = a.dup
p b #=> [1]
p b.frozen? #=> false
b[0] = "foo"
p b #=> ["foo"]
//}
@see Object#frozen?,Object#dup,Kernel.#trace_var......なら Kernel.#trace_var が使えます。
@return self を返します。
//emlist[][ruby]{
a1 = "foo".freeze
a1 = "bar"
p a1 #=> "bar"
a2 = "foo".freeze
a2.replace("bar") # can't modify frozen String (FrozenError)
//}
凍結を解除することはできませんが、Object#dup を使えば......ます。
//emlist[][ruby]{
a = [1].freeze
p a.frozen? #=> true
a[0] = "foo"
p a # can't modify frozen Array (FrozenError)
b = a.dup
p b #=> [1]
p b.frozen? #=> false
b[0] = "foo"
p b #=> ["foo"]
//}
@see Object#frozen?,Object#dup,Kernel.#trace_var...