クラス
- Array (2)
-
Digest
:: Base (2) - Hash (2)
- IO (2)
- Matrix (1)
- Method (1)
- Object (3)
-
REXML
:: Attribute (3) -
REXML
:: CData (1) -
REXML
:: Comment (1) -
REXML
:: DocType (1) -
REXML
:: Document (1) -
REXML
:: Element (1) -
REXML
:: Instruction (1) -
REXML
:: Parent (1) -
REXML
:: Text (1) -
REXML
:: XMLDecl (1) - Set (2)
- UnboundMethod (1)
- Vector (1)
モジュール
-
Rake
:: Cloneable (2) - Singleton (1)
オブジェクト
- ENV (1)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - CLONESETUP (1)
- Cloneable (1)
- Inflate (1)
-
NEWS for Ruby 2
. 0 . 0 (1) -
bind
_ clone (1) -
clone
_ method (1) -
deep
_ clone (1) - dup (7)
-
initialize
_ copy (1) -
irb
/ completion (1) -
method
_ clone (1) - new (2)
-
rb
_ copy _ generic _ ivar (1) -
rb
_ mod _ clone (1) -
rb
_ obj _ clone (1) -
rb
_ singleton _ class _ clone (1) - set (1)
- クラス/メソッドの定義 (1)
検索結果
先頭5件
-
static int clone
_ method(ID mid , NODE *body , st _ table *tbl) (78301.0) -
m_tbl 格納形式のメソッド (構文木) をコピーして返します。 ST_CONTINUE を返します。
m_tbl 格納形式のメソッド (構文木) をコピーして返します。
ST_CONTINUE を返します。 -
Rake
:: Cloneable # clone -> object (63394.0) -
自身を複製します。
自身を複製します。
自身がフリーズされていれば返されるオブジェクトもフリーズされています。
//emlist[][ruby]{
# Rakefile での記載例とする
task default: :test_rake_app
task :test_rake_app do
file_list = FileList['a.c', 'b.c']
clone = file_list.clone
clone # => ["a.c", "b.c"]
clone.exclude("a.c")
clone == file_list # => f... -
IO
# clone -> IO (54430.0) -
レシーバと同じ IO を参照する新しい IO オブジェクトを返します。 参照しているファイル記述子は dup(2) されます。
レシーバと同じ IO を参照する新しい IO オブジェクトを返します。
参照しているファイル記述子は dup(2) されます。
clone の際に self は一旦 IO#flush されます。
フリーズした IO の clone は同様にフリーズされた IO を返しますが、
dup は内容の等しいフリーズされていない IO を返します。
@raise IOError 既に close されていた場合に発生します。
//emlist[例][ruby]{
clone_io = nil
IO.write("testfile", "test")
File.open("testfile") ... -
Set
# clone -> Set (54394.0) -
集合を複製して返します。
集合を複製して返します。
dup は、集合の内容と taint 情報のみコピーします。
clone は、それに加えて、freeze 情報と特異メソッドをコピーします。
いずれも共通して、内部記憶として保持するハッシュもコピーしますが、
集合の要素そのものはコピーしません。
Set クラスでは、dup と clone に共通して、内部記憶として
用いるハッシュも含めて taint 情報をコピーします。
ただし、clone では内部記憶の freeze 情報はコピーされません。
このため、freeze された集合を clone した場合、生成された集合の要素は
変更可能である点に注意してくだ... -
Object
# clone(freeze: true) -> object (54376.0) -
オブジェクトの複製を作成して返します。
オブジェクトの複製を作成して返します。
dup はオブジェクトの内容, taint 情報をコピーし、
clone はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。
clone や dup は浅い(shallow)コピーであることに注意してください。後述。
TrueClass, FalseClass, NilClass, Symbol, そして Numeric クラスのインスタンスなど一部のオブジェクトは複製ではなくインスタンス自身を返します。
@param freeze false を指定すると freeze されていないコピーを返します。
@r... -
Hash
# clone -> Hash (54340.0) -
selfと同じ内容を持つ新しいハッシュを返します。
selfと同じ内容を持つ新しいハッシュを返します。
clone は frozen singleton-class の情報も含めてコピーしますが、
dup は内容と tainted だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり参照しているオブジェクトが変わらない「浅い(shallow)」コピーを行います。
//emlist[例][ruby]{
h1 = {"have" => "have a","as" => "as a" }
h2 = h1.dup
h2["have"] = "has"
p h2 #=> {"have"=>"has", "as"=>... -
Method
# clone -> Method (54340.0) -
自身を複製した Method オブジェクトを作成して返します。
自身を複製した Method オブジェクトを作成して返します。
//emlist[例][ruby]{
class Foo
def foo
"foo"
end
end
m = Foo.new.method(:foo) # => #<Method: Foo#foo>
m.call # => "foo"
m.clone # => #<Method: Foo#foo>
m.clone.call # => "foo"
//} -
Array
# clone -> Array (54322.0) -
レシーバと同じ内容を持つ新しい配列を返します。
レシーバと同じ内容を持つ新しい配列を返します。
clone は frozen singleton-class の情報も含めてコピーしますが、
dup は内容と tainted だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり参照しているオブジェクトが変わらない「浅い(shallow)」コピーを行います。
//emlist[例][ruby]{
ary = ['string']
p ary #=> ["string"]
copy = ary.dup
p copy #=> ["string"]
ary[0][0... -
ENV
. clone(freeze: true) -> object (54322.0) -
ENV オブジェクトの複製を作成して返します。
ENV オブジェクトの複製を作成して返します。
ENV は OS のプロセス全体で共有される環境変数を操作するラッパーオブジェクトなので、複製は有用ではありません。
そのため、3.1 からは複製で環境変数を操作するときに deprecated 警告がでます。
テスト実行中に環境変数を退避する用途には ENV.to_h を使用してください。
//emlist[][ruby]{
saved_env = ENV.to_h
# (テストなど)
ENV.replace(saved_env)
//}
@see Object#clone -
UnboundMethod
# clone -> UnboundMethod (54322.0) -
自身を複製した UnboundMethod オブジェクトを作成して返します。
自身を複製した UnboundMethod オブジェクトを作成して返します。
//emlist[例][ruby]{
a = String.instance_method(:size)
b = a.clone
a == b # => true
//} -
Digest
:: Base # clone -> Digest :: Base (54304.0) -
ダイジェストオブジェクトの複製を作ります。
ダイジェストオブジェクトの複製を作ります。 -
Matrix
# clone -> Matrix (54304.0) -
自分自身のコピーを返します。
自分自身のコピーを返します。 -
REXML
:: Attribute # clone -> REXML :: Element (54304.0) -
self を複製し返します。
self を複製し返します。 -
REXML
:: CData # clone -> REXML :: CData (54304.0) -
self を複製して返します。
self を複製して返します。
親ノードの情報は複製されません。 -
REXML
:: Comment # clone -> REXML :: Comment (54304.0) -
内容が複製された Comment オブジェクトを返します。 (親ノードの情報は複製されません)。
内容が複製された Comment オブジェクトを返します。
(親ノードの情報は複製されません)。 -
REXML
:: DocType # clone -> REXML :: DocType (54304.0) -
self の複製を返します。
self の複製を返します。
external_id (REXML::DocType#external_id) と
名前(REXML::DocType#name) のみ複製されるため、
結果として得られるオブジェクトはあまり有用ではないでしょう。 -
REXML
:: Document # clone -> REXML :: Document (54304.0) -
self を複製します。
self を複製します。
REXML::Document.new(self) と同じです。 -
REXML
:: Element # clone -> REXML :: Element (54304.0) -
self を複製して返します。
self を複製して返します。
複製されるのは名前、属性、名前空間のみです。
子ノードは複製されません。 -
REXML
:: Instruction # clone -> REXML :: Instruction (54304.0) -
self を複製します。
self を複製します。 -
REXML
:: Text # clone -> REXML :: Text (54304.0) -
self を複製します。
self を複製します。 -
REXML
:: XMLDecl # clone -> REXML :: XMLDecl (54304.0) -
self を複製します。
self を複製します。 -
Singleton
# clone (54304.0) -
@raise TypeError このメソッドを呼び出した場合に発生します。
@raise TypeError このメソッドを呼び出した場合に発生します。 -
Vector
# clone -> Vector (54304.0) -
自分自身をコピーしたベクトルを返します。
自分自身をコピーしたベクトルを返します。 -
void CLONESETUP(VALUE clone
, VALUE obj) (18697.0) -
OBJSETUP() の変種。 clone を、obj から clone で作った オブジェクトとして初期化します。
OBJSETUP() の変種。
clone を、obj から clone で作った
オブジェクトとして初期化します。 -
VALUE rb
_ mod _ clone(VALUE mod) (18349.0) -
モジュール mod を clone して返します。
モジュール mod を clone して返します。 -
VALUE rb
_ obj _ clone(VALUE obj) (18349.0) -
Object#clone の実体です。
Object#clone の実体です。 -
VALUE rb
_ singleton _ class _ clone(VALUE klass) (18349.0) -
特異クラス klass を clone して返します。 klass が特異クラスでないときはただ klass を返します。
特異クラス klass を clone して返します。
klass が特異クラスでないときはただ klass を返します。 -
REXML
:: Parent # deep _ clone -> REXML :: Parent (18304.0) -
ノードを複製し、複製されたノードを返します。
ノードを複製し、複製されたノードを返します。
子ノードも複製されます。 -
static VALUE bind
_ clone(VALUE self) (18301.0) -
-
static VALUE method
_ clone(VALUE self) (18301.0) -
-
Rake
:: Cloneable (18001.0) -
簡単に複製したオブジェクトを作成できるようにするための Mixin モジュールです。
簡単に複製したオブジェクトを作成できるようにするための
Mixin モジュールです。 -
IO
# dup -> IO (9130.0) -
レシーバと同じ IO を参照する新しい IO オブジェクトを返します。 参照しているファイル記述子は dup(2) されます。
レシーバと同じ IO を参照する新しい IO オブジェクトを返します。
参照しているファイル記述子は dup(2) されます。
clone の際に self は一旦 IO#flush されます。
フリーズした IO の clone は同様にフリーズされた IO を返しますが、
dup は内容の等しいフリーズされていない IO を返します。
@raise IOError 既に close されていた場合に発生します。
//emlist[例][ruby]{
clone_io = nil
IO.write("testfile", "test")
File.open("testfile") ... -
Set
# dup -> Set (9094.0) -
集合を複製して返します。
集合を複製して返します。
dup は、集合の内容と taint 情報のみコピーします。
clone は、それに加えて、freeze 情報と特異メソッドをコピーします。
いずれも共通して、内部記憶として保持するハッシュもコピーしますが、
集合の要素そのものはコピーしません。
Set クラスでは、dup と clone に共通して、内部記憶として
用いるハッシュも含めて taint 情報をコピーします。
ただし、clone では内部記憶の freeze 情報はコピーされません。
このため、freeze された集合を clone した場合、生成された集合の要素は
変更可能である点に注意してくだ... -
Object
# dup -> object (9076.0) -
オブジェクトの複製を作成して返します。
オブジェクトの複製を作成して返します。
dup はオブジェクトの内容, taint 情報をコピーし、
clone はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。
clone や dup は浅い(shallow)コピーであることに注意してください。後述。
TrueClass, FalseClass, NilClass, Symbol, そして Numeric クラスのインスタンスなど一部のオブジェクトは複製ではなくインスタンス自身を返します。
@param freeze false を指定すると freeze されていないコピーを返します。
@r... -
Rake
:: Cloneable # dup -> object (9055.0) -
自身と同じクラスのオブジェクトを作成後、自身のインスタンス変数を 全て新たに作成したオブジェクトにコピーします。
自身と同じクラスのオブジェクトを作成後、自身のインスタンス変数を
全て新たに作成したオブジェクトにコピーします。
//emlist[][ruby]{
# Rakefile での記載例とする
task default: :test_rake_app
task :test_rake_app do
file_list = FileList['a.c', 'b.c']
file_list.freeze
dup = file_list.dup
clone = file_list.clone
dup.exclude("a.c") # => ["b.c"]
clone.ex... -
Hash
# dup -> Hash (9040.0) -
selfと同じ内容を持つ新しいハッシュを返します。
selfと同じ内容を持つ新しいハッシュを返します。
clone は frozen singleton-class の情報も含めてコピーしますが、
dup は内容と tainted だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり参照しているオブジェクトが変わらない「浅い(shallow)」コピーを行います。
//emlist[例][ruby]{
h1 = {"have" => "have a","as" => "as a" }
h2 = h1.dup
h2["have"] = "has"
p h2 #=> {"have"=>"has", "as"=>... -
Array
# dup -> Array (9022.0) -
レシーバと同じ内容を持つ新しい配列を返します。
レシーバと同じ内容を持つ新しい配列を返します。
clone は frozen singleton-class の情報も含めてコピーしますが、
dup は内容と tainted だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり参照しているオブジェクトが変わらない「浅い(shallow)」コピーを行います。
//emlist[例][ruby]{
ary = ['string']
p ary #=> ["string"]
copy = ary.dup
p copy #=> ["string"]
ary[0][0... -
Digest
:: Base # dup -> Digest :: Base (9004.0) -
ダイジェストオブジェクトの複製を作ります。
ダイジェストオブジェクトの複製を作ります。 -
REXML
:: Attribute . new(attribute _ to _ clone , parent = nil) -> REXML :: Attribute (322.0) -
新たな属性オブジェクトを生成します。
新たな属性オブジェクトを生成します。
2種類の初期化が可能です。
REXML::Attribute オブジェクトを渡した場合は、
属性名とその値がそれから複製されます。
parent で新たに作られる属性オブジェクトが属する
要素が指定できます。
parent を省略した場合は複製元と同じ要素の属するように
設定されます。
また、属性名とその値を文字列で指定することもできます。
parent で新たに作られる属性オブジェクトが属する
要素が指定できます。
parent を省略した場合は nil が設定されます。
通常はこのメソッドは直接は使わず、REXML::Element#add_at... -
void rb
_ copy _ generic _ ivar(VALUE clone , VALUE obj) (301.0) -
-
Object
# initialize _ copy(obj) -> object (109.0) -
(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。
(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。
このメソッドは self を obj の内容で置き換えます。ただ
し、self のインスタンス変数や特異メソッドは変化しません。
Object#clone, Object#dupの内部で使われています。
initialize_copy は、Ruby インタプリタが知り得ない情報をコピーするた
めに使用(定義)されます。例えば C 言語でクラスを実装する場合、情報
をインスタンス変数に保持させない場合がありますが、そういった内部情
報を initialize_copy でコピーするよう定義しておくことで、du... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (55.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への変更点(まとめ)/サポートプラットフォームの追加>))
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への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))... -
Zlib
:: Inflate (49.0) -
入力データを展開するストリームのクラス。Zlib::Deflate と違い、 このクラスのインスタンスを複製 (clone, dup) することはできません。
入力データを展開するストリームのクラス。Zlib::Deflate と違い、
このクラスのインスタンスを複製 (clone, dup) することはできません。 -
REXML
:: Attribute . new(attribute , value , parent = nil) -> REXML :: Attribute (22.0) -
新たな属性オブジェクトを生成します。
新たな属性オブジェクトを生成します。
2種類の初期化が可能です。
REXML::Attribute オブジェクトを渡した場合は、
属性名とその値がそれから複製されます。
parent で新たに作られる属性オブジェクトが属する
要素が指定できます。
parent を省略した場合は複製元と同じ要素の属するように
設定されます。
また、属性名とその値を文字列で指定することもできます。
parent で新たに作られる属性オブジェクトが属する
要素が指定できます。
parent を省略した場合は nil が設定されます。
通常はこのメソッドは直接は使わず、REXML::Element#add_at... -
NEWS for Ruby 2
. 0 . 0 (19.0) -
NEWS for Ruby 2.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.0.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
== 1.9.3 以降の変更
=== 言語仕様の変更
* キーワード引数を追加しました
* %i, %I をシンボルの配列作成のために追加しました。(%w, %W に似ています)
* デフォルトのソースエンコーディングを US-ASCI... -
irb
/ completion (19.0) -
irb の completion 機能を提供するライブラリです。
irb の completion 機能を提供するライブラリです。
=== 使い方
$ irb -r irb/completion
とするか, ~/.irbrc 中に
require "irb/completion"
を入れてください.
irb実行中に require "irb/completion" してもよいです.
irb 実行中に [Tab] を押すとコンプレーションします.
トップレベルで [Tab] を押すとすべての構文要素, クラス,
メソッドの候補がでます. 候補が唯一ならば完全に補完します.
irb(main):001:0> in
in... -
set (19.0)
-
集合を表す Set クラスと、取り出し順序を保証した SortedSet クラスを提供 します。
集合を表す Set クラスと、取り出し順序を保証した SortedSet クラスを提供
します。
集合とは重複のないオブジェクトの集まりです。
Array の持つ演算機能と Hash の高速な検索機能を合わせ持ちます。
Set および SortedSet は内部記憶として Hash を使うため、集合要素の
等価性は Object#eql? と Object#hash を用いて判断されます。
したがって、集合の各要素には、これらのメソッドが適切に定義されている
必要があります。
Set クラスでは、集合要素を取り出す際の順序は保証されません。
一方、SortedSet では、集合要素はソー... -
クラス/メソッドの定義 (19.0)
-
クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined
クラス/メソッドの定義
* クラス/メソッドの定義:
* class
* singleton_class
* module
* method
* operator
* nest_method
* eval_method
* singleton_method
* class_method
* limit
* 定義に関する操作:
* alias
* undef
* defined
===[a:class] クラス定義
//emlist[例][ruby]{
class Foo < S...