るりまサーチ

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

別のキーワード

  1. rbconfig ruby
  2. fiddle build_ruby_platform
  3. fiddle ruby_free
  4. rake ruby
  5. rubygems/defaults ruby_engine

ライブラリ

クラス

モジュール

検索結果

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

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

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

ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。

この呼び出し以降、varname で指定したグローバル変数に
値が...
...ます。文字列の場合はRubyコードとして評価されます。

trace_var
がフックするのは明示的な代入だけです。
フックは複数登録できます。

フックを解除するには、hook に nil を
指定するか、Kernel.#untrace_var を用います。

hook が...
...は Proc オブジェクトです。
@return フックを登録した場合は nil を返します。解除した場合は解除した
フックを並べた配列を返します。

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

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

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

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

ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。

この呼び出し以降、varname で指定したグローバル変数に
値が...
...ます。文字列の場合はRubyコードとして評価されます。

trace_var
がフックするのは明示的な代入だけです。
フックは複数登録できます。

フックを解除するには、hook に nil を
指定するか、Kernel.#untrace_var を用います。

hook が...
...は Proc オブジェクトです。
@return フックを登録した場合は nil を返します。解除した場合は解除した
フックを並べた配列を返します。

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

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

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

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

ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。

この呼び出し以降、varname で指定したグローバル変数に
値が...
...ます。文字列の場合はRubyコードとして評価されます。

trace_var
がフックするのは明示的な代入だけです。
フックは複数登録できます。

フックを解除するには、hook に nil を
指定するか、Kernel.#untrace_var を用います。

hook が...
...は Proc オブジェクトです。
@return フックを登録した場合は nil を返します。解除した場合は解除した
フックを並べた配列を返します。

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

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

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

...
@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...

1.6.8から1.8.0への変更点(まとめ) (3498.0)

1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))

...$defout>)) [obsolete]
: ((<組み込み変数/$deferr>)) [obsolete]
: ((<組み込み変数/$stdout>)) [change]
: ((<組み込み変数/$stderr>)) [change]
: ((<組み込み変数/$stdin>)) [change]

$stdout, $stderr は、$defout, $deferr の別名になり
$defout, $deferr は ((<obsolete>))...
...ました

$stdin は、普通のグローバル変数となりました(STDINをリダイレクトする
動作はなくなりました)

$defout や $deferr に代入を行うと警告がでます。
(注:1.6 に $deferr はありません)
((<ruby-dev:20961>))

$stdin にオブジ...
...要な警告のみ出力 (-W1 デフォルト)
* true: すべての警告を出力する (-W2 or -W or -v or -w or --verbose)

追加された -W オプションは $VERBOSE = nil の指定(-W0)を可能にします。

: ruby interpreter [ruby] [change]

クラスの特異クラスの特異...

絞り込み条件を変える

Object#freeze -> self (3054.0)

オブジェクトを凍結(内容の変更を禁止)します。

...オブジェクトを凍結(内容の変更を禁止)します。

凍結されたオブジェクトの変更は
例外 RuntimeError を発生させます。
いったん凍結されたオブジェクトを元に戻す方法はありません。

凍結されるのはオブジェクトであり...
...なら 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...