581件ヒット
[1-100件を表示]
(0.120秒)
ライブラリ
クラス
- BasicObject (12)
- CSV (24)
- Delegator (12)
- ERB (12)
- FrozenError (6)
-
Gem
:: Requirement (12) - Hash (24)
- MatchData (12)
- Module (12)
- Object (69)
- OpenStruct (12)
-
REXML
:: Element (48) - Set (24)
- String (23)
- StringScanner (48)
- Symbol (5)
- Thread (36)
- ThreadGroup (24)
モジュール
- Psych (8)
-
Rake
:: Cloneable (12)
オブジェクト
- ENV (12)
キーワード
- +@ (10)
- -@ (10)
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - Converters (12)
- FrozenError (8)
- HeaderConverters (12)
- Id (12)
- Marshal フォーマット (12)
-
NEWS for Ruby 2
. 3 . 0 (10) -
NEWS for Ruby 2
. 4 . 0 (9) -
NEWS for Ruby 3
. 1 . 0 (4) - OPS (12)
- Rubyの起動 (7)
- SSLContext (12)
- Set (3)
- ThreadError (12)
- ThreadGroup (12)
- Version (12)
-
_ _ id _ _ (12) - add (12)
- cdatas (12)
- clone (36)
- comments (12)
- dedup (3)
- dup (36)
- enclosed? (12)
- fork (12)
- frozen? (12)
-
initialize
_ copy (12) - instructions (12)
-
irb
/ completion (12) - modifiable (12)
- name (5)
- new (48)
- receiver (6)
-
ruby 1
. 6 feature (12) -
safe
_ load (8) - set (9)
- src (12)
- start (12)
- string (24)
- taint (9)
- texts (12)
検索結果
先頭5件
-
Object
# freeze -> self (21143.0) -
オブジェクトを凍結(内容の変更を禁止)します。
...RuntimeError を発生させます。
いったん凍結されたオブジェクトを元に戻す方法はありません。
凍結されるのはオブジェクトであり、変数ではありません。代入などで変数の指す
オブジェクトが変化してしまうことは freeze......ません。 freeze が防ぐのは、
`破壊的な操作' と呼ばれるもの一般です。変数への参照自体を凍結したい
場合は、グローバル変数なら Kernel.#trace_var が使えます。
@return self を返します。
//emlist[][ruby]{
a1 = "foo".freeze
a1 = "bar"
p a......a2 = "foo".freeze
a2.replace("bar") # can't modify frozen String (RuntimeError)
//}
凍結を解除することはできませんが、Object#dup を使えばほぼ同じ内容の凍結されていない
オブジェクトを得ることはできます。
//emlist[][ruby]{
a = [1].freeze
p a.froze......ことは freeze では防げません。 freeze が防ぐのは、
`破壊的な操作' と呼ばれるもの一般です。変数への参照自体を凍結したい
場合は、グローバル変数なら Kernel.#trace_var が使えます。
@return self を返します。
//emlist[][ruby]{
a1......freeze
a2.replace("bar") # can't modify frozen String (FrozenError)
//}
凍結を解除することはできませんが、Object#dup を使えばほぼ同じ内容の凍結されていない
オブジェクトを得ることはできます。
//emlist[][ruby]{
a = [1].freeze
p a.frozen? #=> t......rue
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... -
Delegator
# freeze -> self (21107.0) -
自身を凍結します。
...自身を凍結します。
@see Object#freeze... -
Module
# freeze -> self (18119.0) -
モジュールを凍結(内容の変更を禁止)します。
...。
凍結したモジュールにメソッドの追加など何らかの変更を加えようとした場合に
FrozenError
が発生します。
@see Object#freeze
//emlist[例][ruby]{
module Foo; end
Foo.freeze
module Foo
def foo; end
end # => FrozenError: can't modify frozen module
//}... -
StringScanner
# string -> String (9206.0) -
スキャン対象にしている文字列を返します。
...mlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.string # => "test string"
//}
返り値は freeze されていません。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.string.frozen? # => false
//}
なお、このメソッドは String......仕様に依存したコードを書かないようにしましょう。
//emlist[例][ruby]{
require 'strscan'
str = 'test string'
s = StringScanner.new(str)
s.string == str # => true
s.string.eql?(str) # => true (将来は false になる可能性がある)
//}
また、返り値の文字列......かないでください。
//emlist[例][ruby]{
require 'strscan'
str = 'test string'
s = StringScanner.new(str)
s.string.replace("0123")
s.scan(/\w+/) # => "0123" (将来は "test" が返る可能性あり)
str # => "0123" (将来は "test string" が返る可能性あり)
//}... -
MatchData
# string -> String (6206.0) -
マッチ対象になった文字列の複製を返します。
...マッチ対象になった文字列の複製を返します。
返す文字列はフリーズ(Object#freeze)されています。
//emlist[例][ruby]{
m = /(.)(.)(\d+)(\d)/.match("THX1138.")
m.string # => "THX1138."
//}... -
REXML
:: Element # cdatas -> [REXML :: CData] (6206.0) -
すべての cdata 子ノードの配列を返します。
...すべての cdata 子ノードの配列を返します。
返される配列は freeze されます。... -
REXML
:: Element # comments -> [REXML :: Comments] (6206.0) -
すべての comment 子ノードの配列を返します。
...すべての comment 子ノードの配列を返します。
返される配列は freeze されます。... -
REXML
:: Element # instructions -> [REXML :: Instraction] (6206.0) -
すべての instruction 子ノードの配列を返します。
...すべての instruction 子ノードの配列を返します。
返される配列は freeze されます。... -
REXML
:: Element # texts -> [REXML :: Texts] (6206.0) -
すべてのテキスト子ノードの配列を返します。
...すべてのテキスト子ノードの配列を返します。
返される配列は freeze されます。...