種類
ライブラリ
- English (12)
- ビルトイン (451)
- benchmark (12)
- bigdecimal (8)
- csv (12)
- digest (24)
- etc (1560)
- fcntl (12)
- rake (12)
-
rubygems
/ dependency _ installer (12) -
rubygems
/ specification (12) - set (18)
- singleton (12)
- strscan (12)
- zlib (12)
クラス
- Array (96)
- BasicObject (12)
- BigDecimal (8)
- CSV (12)
-
Digest
:: Base (24) -
Encoding
:: Converter (48) -
Gem
:: DependencyInstaller (12) -
Gem
:: Specification (12) - Hash (98)
- IO (24)
- Object (72)
-
RubyVM
:: InstructionSequence (36) - Set (24)
- String (3)
- StringScanner (12)
オブジェクト
- ENV (8)
キーワード
-
$ > (12) -
$ DEFAULT _ OUTPUT (12) -
$ stderr (12) -
$ stdin (12) -
$ stdout (12) -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) -
DEFAULT
_ OPTIONS (12) - DUPSETUP (12)
-
F
_ DUPFD (12) - Inflate (12)
-
NEWS for Ruby 2
. 0 . 0 (12) -
NEWS for Ruby 2
. 5 . 0 (8) - Ruby用語集 (12)
-
SC
_ 2 _ CHAR _ TERM (12) -
SC
_ 2 _ C _ BIND (12) -
SC
_ 2 _ C _ DEV (12) -
SC
_ 2 _ FORT _ DEV (12) -
SC
_ 2 _ FORT _ RUN (12) -
SC
_ 2 _ LOCALEDEF (12) -
SC
_ 2 _ PBS (12) -
SC
_ 2 _ PBS _ ACCOUNTING (12) -
SC
_ 2 _ PBS _ CHECKPOINT (12) -
SC
_ 2 _ PBS _ LOCATE (12) -
SC
_ 2 _ PBS _ MESSAGE (12) -
SC
_ 2 _ PBS _ TRACK (12) -
SC
_ 2 _ SW _ DEV (12) -
SC
_ 2 _ UPE (12) -
SC
_ 2 _ VERSION (12) -
SC
_ ADVISORY _ INFO (12) -
SC
_ AIO _ LISTIO _ MAX (12) -
SC
_ AIO _ MAX (12) -
SC
_ AIO _ PRIO _ DELTA _ MAX (12) -
SC
_ ARG _ MAX (12) -
SC
_ ASYNCHRONOUS _ IO (12) -
SC
_ ATEXIT _ MAX (12) -
SC
_ AVPHYS _ PAGES (12) -
SC
_ BARRIERS (12) -
SC
_ BC _ BASE _ MAX (12) -
SC
_ BC _ DIM _ MAX (12) -
SC
_ BC _ SCALE _ MAX (12) -
SC
_ BC _ STRING _ MAX (12) -
SC
_ CHILD _ MAX (12) -
SC
_ CLK _ TCK (12) -
SC
_ CLOCK _ SELECTION (12) -
SC
_ COLL _ WEIGHTS _ MAX (12) -
SC
_ CPUSET _ SIZE (12) -
SC
_ CPUTIME (12) -
SC
_ DELAYTIMER _ MAX (12) -
SC
_ EXPR _ NEST _ MAX (12) -
SC
_ FSYNC (12) -
SC
_ GETGR _ R _ SIZE _ MAX (12) -
SC
_ GETPW _ R _ SIZE _ MAX (12) -
SC
_ HOST _ NAME _ MAX (12) -
SC
_ IOV _ MAX (12) -
SC
_ IPV6 (12) -
SC
_ JOB _ CONTROL (12) -
SC
_ LINE _ MAX (12) -
SC
_ LOGIN _ NAME _ MAX (12) -
SC
_ MAPPED _ FILES (12) -
SC
_ MEMLOCK (12) -
SC
_ MEMLOCK _ RANGE (12) -
SC
_ MEMORY _ PROTECTION (12) -
SC
_ MESSAGE _ PASSING (12) -
SC
_ MONOTONIC _ CLOCK (12) -
SC
_ MQ _ OPEN _ MAX (12) -
SC
_ MQ _ PRIO _ MAX (12) -
SC
_ NGROUPS _ MAX (12) -
SC
_ NPROCESSORS _ CONF (12) -
SC
_ NPROCESSORS _ ONLN (12) -
SC
_ OPEN _ MAX (12) -
SC
_ PAGESIZE (12) -
SC
_ PAGE _ SIZE (12) -
SC
_ PHYS _ PAGES (12) -
SC
_ PRIORITIZED _ IO (12) -
SC
_ PRIORITY _ SCHEDULING (12) -
SC
_ RAW _ SOCKETS (12) -
SC
_ READER _ WRITER _ LOCKS (12) -
SC
_ REALTIME _ SIGNALS (12) -
SC
_ REGEXP (12) -
SC
_ RE _ DUP _ MAX (12) -
SC
_ RTSIG _ MAX (12) -
SC
_ SAVED _ IDS (12) -
SC
_ SEMAPHORES (12) -
SC
_ SEM _ NSEMS _ MAX (12) -
SC
_ SEM _ VALUE _ MAX (12) -
SC
_ SHARED _ MEMORY _ OBJECTS (12) -
SC
_ SHELL (12) -
SC
_ SIGQUEUE _ MAX (12) -
SC
_ SPAWN (12) -
SC
_ SPIN _ LOCKS (12) -
SC
_ SPORADIC _ SERVER (12) -
SC
_ SS _ REPL _ MAX (12) -
SC
_ STREAM _ MAX (12) -
SC
_ SYMLOOP _ MAX (12) -
SC
_ SYNCHRONIZED _ IO (12) -
SC
_ THREADS (12) -
SC
_ THREAD _ ATTR _ STACKADDR (12) -
SC
_ THREAD _ ATTR _ STACKSIZE (12) -
SC
_ THREAD _ CPUTIME (12) -
SC
_ THREAD _ DESTRUCTOR _ ITERATIONS (12) -
SC
_ THREAD _ KEYS _ MAX (12) -
SC
_ THREAD _ PRIORITY _ SCHEDULING (12) -
SC
_ THREAD _ PRIO _ INHERIT (12) -
SC
_ THREAD _ PRIO _ PROTECT (12) -
SC
_ THREAD _ PROCESS _ SHARED (12) -
SC
_ THREAD _ ROBUST _ PRIO _ INHERIT (12) -
SC
_ THREAD _ ROBUST _ PRIO _ PROTECT (12) -
SC
_ THREAD _ SAFE _ FUNCTIONS (12) -
SC
_ THREAD _ SPORADIC _ SERVER (12) -
SC
_ THREAD _ STACK _ MIN (12) -
SC
_ THREAD _ THREADS _ MAX (12) -
SC
_ TIMEOUTS (12) -
SC
_ TIMERS (12) -
SC
_ TIMER _ MAX (12) -
SC
_ TRACE (12) -
SC
_ TRACE _ EVENT _ FILTER (12) -
SC
_ TRACE _ EVENT _ NAME _ MAX (12) -
SC
_ TRACE _ INHERIT (12) -
SC
_ TRACE _ LOG (12) -
SC
_ TRACE _ NAME _ MAX (12) -
SC
_ TRACE _ SYS _ MAX (12) -
SC
_ TRACE _ USER _ EVENT _ MAX (12) -
SC
_ TTY _ NAME _ MAX (12) -
SC
_ TYPED _ MEMORY _ OBJECTS (12) -
SC
_ TZNAME _ MAX (12) -
SC
_ V6 _ ILP32 _ OFF32 (12) -
SC
_ V6 _ ILP32 _ OFFBIG (12) -
SC
_ V6 _ LP64 _ OFF64 (12) -
SC
_ V6 _ LPBIG _ OFFBIG (12) -
SC
_ V7 _ ILP32 _ OFF32 (12) -
SC
_ V7 _ ILP32 _ OFFBIG (12) -
SC
_ V7 _ LP64 _ OFF64 (12) -
SC
_ V7 _ LPBIG _ OFFBIG (12) -
SC
_ VERSION (12) -
SC
_ XOPEN _ CRYPT (12) -
SC
_ XOPEN _ ENH _ I18N (12) -
SC
_ XOPEN _ REALTIME (12) -
SC
_ XOPEN _ REALTIME _ THREADS (12) -
SC
_ XOPEN _ SHM (12) -
SC
_ XOPEN _ STREAMS (12) -
SC
_ XOPEN _ UNIX (12) -
SC
_ XOPEN _ UUCP (12) -
SC
_ XOPEN _ VERSION (12) -
array
_ attributes (12) - bmbm (12)
- clone (76)
- dedup (3)
- disasm (12)
- disassemble (12)
- equal? (12)
- filter! (14)
-
frame
_ dup (12) - freeze (12)
- generate (12)
- hash (12)
-
initialize
_ clone (12) -
initialize
_ copy (12) -
initialize
_ dup (12) -
irb
/ completion (12) -
keep
_ if (24) - new (48)
-
primitive
_ convert (48) -
rb
_ class _ path (12) -
rb
_ define _ global _ function (12) -
rb
_ mod _ dup (12) -
rb
_ obj _ dup (12) -
rb
_ str _ dup (12) -
rdoc
/ parser / c (12) - replace (12)
-
ruby 1
. 6 feature (12) -
ruby 1
. 8 . 2 feature (12) -
ruby 1
. 8 . 3 feature (12) -
ruby 1
. 8 . 4 feature (12) -
ruby 1
. 9 feature (12) -
scope
_ dup (12) - select! (24)
- set (9)
- shuffle (24)
-
st
_ copy (12) -
to
_ a (12) - クラス/メソッドの定義 (12)
検索結果
先頭5件
-
Rake
:: Cloneable # dup -> object (18119.0) -
自身と同じクラスのオブジェクトを作成後、自身のインスタンス変数を 全て新たに作成したオブジェクトにコピーします。
...# 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.exclude("a.c") # => can't modify frozen Rake::FileList
end
//}... -
BigDecimal
# dup -> BigDecimal (18101.0) -
self を返すように、BigDecimal で定義されています。
self を返すように、BigDecimal で定義されています。 -
ENV
. dup -> () (18101.0) -
TypeErrorを発生させます。
TypeErrorを発生させます。
3.0 以前では Object.new と同様の ENV とは無関係の有用ではないオブジェクトを返していたため、3.1 からは例外が発生するようになりました。
詳細はENV.cloneを参照してください。
@see ENV.clone -
Singleton
# dup (18101.0) -
@raise TypeError このメソッドを呼び出した場合に発生します。
@raise TypeError このメソッドを呼び出した場合に発生します。 -
Object
# dup -> object (15131.0) -
オブジェクトの複製を作成して返します。
...ェクトの複製を作成して返します。
dup はオブジェクトの内容, taint 情報をコピーし、
clone はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。
clone や dup は浅い(shallow)コピーであることに注......bj_d = obj.dup
p(obj.equal?(obj_d)) #=> false
p(obj == obj_d) #=> true
p(obj_d.tainted?) #=> true
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
//}
@see Object#initialize_copy
=== 深いコピーと浅いコピー
clone や dup はオブ......だしMarshal出来ないオブジェクトが
含まれている場合には使えません。
//emlist[][ruby]{
obj = ["a","b","c"]
obj_d = obj.dup
obj_d[0] << "PLUS"
p obj #=> ["aPLUS", "b", "c"]
p obj_d #=> ["aPLUS", "b", "c"]
obj_m = Marshal.load(Marshal.dump(obj))
obj_m[1] << "PLUS"
p o......j_d = obj.dup
p(obj.equal?(obj_d)) #=> false
p(obj == obj_d) #=> true
p(obj_d.tainted?) #=> false
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
//}
@see Object#initialize_copy
=== 深いコピーと浅いコピー
clone や dup はオブ......オブジェクトの複製を作成して返します。
dup はオブジェクトの内容をコピーし、
clone はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。
clone や dup は浅い(shallow)コピーであることに注意し......fuga)) #=> true
obj_d = obj.dup
p(obj.equal?(obj_d)) #=> false
p(obj == obj_d) #=> true
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
//}
@see Object#initialize_copy
=== 深いコピーと浅いコピー
clone や dup はオブジェクト自身... -
IO
# dup -> IO (15123.0) -
レシーバと同じ IO を参照する新しい IO オブジェクトを返します。 参照しているファイル記述子は dup(2) されます。
...を返します。
参照しているファイル記述子は dup(2) されます。
clone の際に self は一旦 IO#flush されます。
フリーズした IO の clone は同様にフリーズされた IO を返しますが、
dup は内容の等しいフリーズされていない IO を返... -
Set
# dup -> Set (15119.0) -
集合を複製して返します。
...集合を複製して返します。
dup は、集合の内容と taint 情報のみコピーします。
clone は、それに加えて、freeze 情報と特異メソッドをコピーします。
いずれも共通して、内部記憶として保持するハッシュもコピーしますが、......集合の要素そのものはコピーしません。
Set クラスでは、dup と clone に共通して、内部記憶として
用いるハッシュも含めて taint 情報をコピーします。
ただし、clone では内部記憶の freeze 情報はコピーされません。
このため......、freeze された集合を clone した場合、生成された集合の要素は
変更可能である点に注意してください。
//emlist[][ruby]{
require 'set'
s1 = Set[10, 20]
s2 = s1.dup
s2 << 30
p s1 # => #<Set: {10, 20}>
p s2 # => #<Set: {10, 20, 30}>
//}
@see Object#clone......、freeze された集合を clone した場合、生成された集合の要素は
変更可能である点に注意してください。
//emlist[][ruby]{
s1 = Set[10, 20]
s2 = s1.dup
s2 << 30
p s1 # => #<Set: {10, 20}>
p s2 # => #<Set: {10, 20, 30}>
//}
@see Object#clone... -
Array
# dup -> Array (15113.0) -
レシーバと同じ内容を持つ新しい配列を返します。
...シーバと同じ内容を持つ新しい配列を返します。
clone は frozen singleton-class の情報も含めてコピーしますが、
dup は内容と tainted だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり参照......ているオブジェクトが変わらない「浅い(shallow)」コピーを行います。
//emlist[例][ruby]{
ary = ['string']
p ary #=> ["string"]
copy = ary.dup
p copy #=> ["string"]
ary[0][0...3] = ''
p ary #=> ["ing"]
p copy #=> ["ing"]
//}......シーバと同じ内容を持つ新しい配列を返します。
clone は frozen singleton-class の情報も含めてコピーしますが、
dup は内容だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり参照している......オブジェクトが変わらない「浅い(shallow)」コピーを行います。
//emlist[例][ruby]{
ary = ['string']
p ary #=> ["string"]
copy = ary.dup
p copy #=> ["string"]
ary[0][0...3] = ''
p ary #=> ["ing"]
p copy #=> ["ing"]
//}... -
Hash
# dup -> Hash (15113.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"=>"as a"}
p h1 #=> {"have"=>"have a", "as"=>"as a"}
h2["as"].upcase!
p h2 #=> {"have"=>"has", "as"......selfと同じ内容を持つ新しいハッシュを返します。
clone は frozen singleton-class の情報も含めてコピーしますが、
dup は内容だけをコピーします。
またどちらのメソッドも要素それ自体のコピーはしません。
つまり参照してい... -
Digest
:: Base # dup -> Digest :: Base (15101.0) -
ダイジェストオブジェクトの複製を作ります。
ダイジェストオブジェクトの複製を作ります。