るりまサーチ

最速Rubyリファレンスマニュアル検索!
3076件ヒット [1-100件を表示] (0.058秒)

別のキーワード

  1. objectspace each_object
  2. _builtin each_object
  3. object send
  4. object to_enum
  5. object enum_for

ライブラリ

オブジェクト

キーワード

検索結果

<< 1 2 3 ... > >>

Object#initialize_clone(obj) -> object (27235.0)

Object#clone がオブジェクトを複製する際に呼び出すメソッドです。

...
Object
#clone がオブジェクトを複製する際に呼び出すメソッドです。

デフォルトでは Object#initialize_copy を呼び出します。

initialize_clone という名前のメソッドは自動的に private に設定されます。

@see Object#initialize_copy, Object#initi...

Object#clone(freeze: nil) -> object (27208.0)

オブジェクトの複製を作成して返します。

...て返します。

dup はオブジェクトの内容, taint 情報をコピーし、
clone はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。

clone や dup は浅い(shallow)コピーであることに注意してください。後述...
...obj.frozen?) #=> true
p(obj.respond_to?(:fuga)) #=> true

obj_c = obj.clone

p(obj.equal?(obj_c)) #=> false
p(obj == obj_c) #=> true
p(obj_c.tainted?) #=> true
p(obj_c.frozen?) #=> true
p(obj_c.respond_to?(:fuga)) #=> true

obj_d = obj.dup

p(ob...
...#=> true
p(obj_d.tainted?) #=> true
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
//}

@see Object#initialize_copy

=== 深いコピーと浅いコピー

clone や dup はオブジェクト自身を複製するだけで、オブジェクトの指し
てい...
...obj.frozen?) #=> true
p(obj.respond_to?(:fuga)) #=> true

obj_c = obj.clone

p(obj.equal?(obj_c)) #=> false
p(obj == obj_c) #=> true
p(obj_c.tainted?) #=> false
p(obj_c.frozen?) #=> true
p(obj_c.respond_to?(:fuga)) #=> true

obj_d = obj.dup

p(o...
...#=> 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)コピーであることに注意してください。後述...
...#=> true
p(obj.frozen?) #=> true
p(obj.respond_to?(:fuga)) #=> true

obj_c = obj.clone

p(obj.equal?(obj_c)) #=> false
p(obj == obj_c) #=> true
p(obj_c.frozen?) #=> true
p(obj_c.respond_to?(: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 はオブジェクト自身を複製するだけで、オブジェクトの指し
てい...

Object#must_be_within_epsilon(actual, epsilon = 0.001) -> true (27200.0)

自身と実際の値の相対誤差が許容範囲内である場合、検査にパスしたことになります。

...実際の値の相対誤差が許容範囲内である場合、検査にパスしたことになります。

@param actual 実際の値を指定します。

@param epsilon 許容する相対誤差を指定します。

@raise MiniTest::Assertion 検査に失敗した場合に発生します。...

Object#singleton_methods(inherited_too = true) -> [Symbol] (27136.0)

そのオブジェクトに対して定義されている特異メソッド名 (public あるいは protected メソッド) の一覧を返します。

...た特異メソッドとは Object#extend によって追加された特異メソッドや、
self がクラスの場合はスーパークラスのクラスメソッド(Classのインスタンスの特異メソッド)などです。

singleton_methods(false) は、Object#methods(false) と同じで...
...public; def public_self() end
end

# あるオブジェクトの特異メソッドの一覧を得る。
p obj.singleton_methods(false)
p obj.methods(false)
p Foo.singleton_methods(false)

#実行結果

[:protected_self, :public_self]
[:protected_self, :public_self]
[:protected_class_foo, :pub...
...のクラスメソッドも含まれるよう true を指定したが、
# Object のクラスメソッドは一覧から排除している。

p obj.singleton_methods(true)
p Foo.singleton_methods(true) - Object.singleton_methods(true)

#実行結果

[:protected_self, :public_self, :protected_bar,...

Object#singleton_class -> Class (27118.0)

レシーバの特異クラスを返します。 まだ特異クラスがなければ、新しく作成します。

...します。

@raise TypeError レシーバが Integer、Float、Symbol の場合に発生します。

//emlist[][ruby]{
Object
.new.singleton_class #=> #<Class:#<Object:0xb7ce1e24>>
String.singleton_class #=> #<Class:String>
nil.singleton_class #=> NilClass
//}

@see Object#class...

絞り込み条件を変える

Object#respond_to_missing?(symbol, include_private) -> bool (27112.0)

自身が symbol で表されるメソッドに対し BasicObject#method_missing で反応するつもりならば真を返します。

...れるメソッドに対し
BasicObject#method_missing で反応するつもりならば真を返します。

Object
#respond_to? はメソッドが定義されていない場合、
デフォルトでこのメソッドを呼びだし問合せます。

BasicObject#method_missing を override した...
...end
end

def respond_to_missing?(sym, include_private)
(sym =~ /^to_*/) ? true : super
end
end

s = Sample.new
s.to_sample("sample args1", "sample args2")
s.respond_to?(:to_sample) # => true
s.respond_to?(:sample) # => false
//}

@see Object#respond_to?, BasicObject#method_missing...

Object#singleton_method(name) -> Method (27112.0)

オブジェクトの特異メソッド name をオブジェクト化した Method オブ ジェクトを返します。

...o.new(99)
def k.hi
"Hi, @iv = #{@iv}"
end
m = k.singleton_method(:hi) # => #<Method: #<Demo:0xf8b0c3c4 @iv=99>.hi>
m.call #=> "Hi, @iv = 99"
m = k.singleton_method(:hello) # => NameError
//}

@see Module#instance_method, Method, BasicObject#__send__, Object#send, Kernel.#eval, Object#method...

Object#respond_to?(name, include_all = false) -> bool (27106.0)

オブジェクトがメソッド name を持つとき真を返します。

...れたメソッドで NotImplementedError が発生する場合は true を返します。

メソッドが定義されていない場合は、Object#respond_to_missing? を呼
び出してその結果を返します。

@param name Symbol または文字列で指定するメソッド名です。

@...
...ass F
def hello
"Bonjour"
end
end

class D
private
def hello
"Guten Tag"
end
end
list = [F.new,D.new]

list.each{|it| puts it.hello if it.respond_to?(:hello)}
#=> Bonjour

list.each{|it| it.instance_eval("puts hello if it.respond_to?(:hello, true)")}
#=> Bonjour
# Guten Tag

modu...
...espond_to?(:template_method) # => true
# NotImplementedError が発生しているが、Rubyによる実装部のため true を返す
puts NotImplTemplateMethod.new.respond_to?(:template_method) # => true
# GNU/Linux で実行。C言語による実装部のため false を返す
puts File.respond_t...

Object#define_singleton_method(symbol) { ... } -> Symbol (27100.0)

self に特異メソッド name を定義します。

...t[][ruby]{
class A
class << self
def class_name
to_s
end
end
end
A.define_singleton_method(:who_am_i) do
"I am: #{class_name}"
end
A.who_am_i # ==> "I am: A"

guy = "Bob"
guy.define_singleton_method(:hello) { "#{self}: Hello there!" }
guy.hello #=> "Bob: Hello there!"
//}...

Object#define_singleton_method(symbol, method) -> Symbol (27100.0)

self に特異メソッド name を定義します。

...t[][ruby]{
class A
class << self
def class_name
to_s
end
end
end
A.define_singleton_method(:who_am_i) do
"I am: #{class_name}"
end
A.who_am_i # ==> "I am: A"

guy = "Bob"
guy.define_singleton_method(:hello) { "#{self}: Hello there!" }
guy.hello #=> "Bob: Hello there!"
//}...

絞り込み条件を変える

<< 1 2 3 ... > >>