関連するキーワード
キーワード
-
_ _ id _ _ (2) -
_ _ send _ _ (6) - clone (3)
- dup (3)
- equal? (3)
- hash (3)
- id (1)
-
instance
_ variable _ defined? (3) -
instance
_ variable _ get (3) -
instance
_ variable _ set (3) -
instance
_ variables (2) - method (3)
-
method
_ missing (3) - methods (2)
-
object
_ id (3) -
pretty
_ print _ instance _ variables (3) -
private
_ methods (2) -
protected
_ methods (2) -
public
_ methods (2) -
public
_ send (2) -
respond
_ to? (3) -
respond
_ to _ missing? (2) - send (6)
-
singleton
_ class (2) -
singleton
_ method _ added (3) -
singleton
_ method _ removed (3) -
singleton
_ method _ undefined (3) -
singleton
_ methods (2)
検索結果
先頭5件
-
Object
# respond _ to _ missing?(symbol , include _ private) -> bool (124) -
自身が symbol で表されるメソッドに対し Object#method_missing で 反応するつもりならば真を返します。
...自身が symbol で表されるメソッドに対し Object#method_missing で
反応するつもりならば真を返します。
Object#respond_to? はメソッドが定義されていない場合、
デフォルトでこのメソッドを呼びだし問合せます。
Object#method_missing......を override した場合に
このメソッドも override されるべきです。
false を返します。
@param symbol メソッド名シンボル
@param include_private private method も含めたい場合に true が渡されます
@see Object#respond_to?... -
Object
# instance _ variables -> [Symbol] (102) -
オブジェクトのインスタンス変数名をシンボルの配列として返します。
...のインスタンス変数名をシンボルの配列として返します。
obj = Object.new
obj.instance_eval { @foo, @bar = nil }
p obj.instance_variables
#=> [:@foo, :@bar]
@see Object#instance_variable_get,Kernel.#local_variables,Kernel.#global_variables,Module.constants,Mo... -
Object
# methods(include _ inherited = true) -> [Symbol] (102) -
そのオブジェクトに対して呼び出せるメソッド名の一覧を返します。 このメソッドは public メソッドおよび protected メソッドの名前を返します。
...ected メソッドの名前を返します。
ただし特別に、引数が偽の時は Object#singleton_methods(false) と同じになっています。
@param include_inherited 引数が偽の時は Object#singleton_methods(false) と同じになります。
#例1:
class Parent
pri......して
# いるが、Object のインスタンスメソッドは一覧から排除している。
p obj.methods(true) - Object.instance_methods(true)
p obj.public_methods(true) - Object.public_instance_methods(true)
p obj.private_methods(true) - Object.private_instance_methods......(true)
p obj.protected_methods(true) - Object.protected_instance_methods(true)
#実行結果
[:protected_singleton, :public_singleton, :protected_foo, :public_foo, :protected_parent, :public_parent]
[:public_singleton, :public_foo, :public_parent]
[:private_singleton, :private_foo, :... -
Object
# pretty _ print _ instance _ variables -> [String | Symbol] (102) -
プリティプリント時に表示すべき自身のインスタンス変数名の配列をソートして返します。 返されたインスタンス変数はプリティプリント時に表示されます。
プリティプリント時に表示すべき自身のインスタンス変数名の配列をソートして返します。
返されたインスタンス変数はプリティプリント時に表示されます。
pp に表示したくないインスタンス変数がある場合にこのメソッドを再定義します。 -
Object
# private _ methods(include _ inherited = true) -> [Symbol] (102) -
そのオブジェクトが理解できる private メソッド名の一覧を返します。
...が理解できる private メソッド名の一覧を返します。
@param include_inherited 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。
@see Module#private_instance_methods,Object#methods,Object#singleton_methods... -
Object
# protected _ methods(include _ inherited = true) -> [Symbol] (102) -
そのオブジェクトが理解できる protected メソッド名の一覧を返します。
...理解できる protected メソッド名の一覧を返します。
@param include_inherited 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。
@see Module#protected_instance_methods,Object#methods,Object#singleton_methods... -
Object
# public _ methods(include _ inherited = true) -> [Symbol] (102) -
そのオブジェクトが理解できる public メソッド名の一覧を返します。
...トが理解できる public メソッド名の一覧を返します。
@param include_inherited 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。
@see Module#public_instance_methods,Object#methods,Object#singleton_methods... -
Object
# singleton _ methods(inherited _ too = true) -> [Symbol] (102) -
そのオブジェクトに対して定義されている特異メソッド名 (public あるいは protected メソッド) の一覧を返します。
...)に関しては
引数が真のとき、スーパークラスのクラスメソッドも対象になります。
singleton_methods(false) は、Object#methods(false) と同じです。
@param inherited_too 引数が真のとき、スーパークラスのクラスメソッドも対象になりま......のクラスメソッドも含まれるよう true を指定したが、
# Object のクラスメソッドは一覧から排除している。
p obj.singleton_methods(true)
p Foo.singleton_methods(true) - Object.singleton_methods(true)
#実行結果
[:protected_self, :public_self,......:protected_bar, :public_bar]
[:protected_class_foo, :public_class_foo, :protected_class_parent, :public_class_parent]
@see Object#methods,Object#extend... -
Object
# _ _ id _ _ -> Integer (19) -
各オブジェクトに対して一意な整数を返します。あるオブジェクトに対し てどのような整数が割り当てられるかは不定です。
...クティブなオブジェクト間で
重複しない整数(object_id)が各オブジェクトにひとつずつ割り当てられています。この
メソッドはその値を返します。
TrueClass, FalseClass, NilClass, Symbol, Fixnum クラス
のインスタンスなど Immutable(変......らば必ず同じ object_id になります。
これは、Immutable ならば複数の場所から参照されても`破壊的操作'による問題が発生しないので、
同じ内容のインスタンスを複数生成しないという内部実装が理由です。
Symbol#to_iで得られ......で、object_id か __id__ を使用してください。
p "ruby".object_id #=> 22759500
p "ruby".object_id #=> 22759400
p [].object_id #=> 22759360
p [].object_id #=> 22759340
p :ruby.object_id #=> 103538
p :ruby.object_id #=> 103538
p 11.object_id #=> 23
p 11.object_id #... -
Object
# id -> Integer (19) -
各オブジェクトに対して一意な整数を返します。あるオブジェクトに対し てどのような整数が割り当てられるかは不定です。
...クティブなオブジェクト間で
重複しない整数(object_id)が各オブジェクトにひとつずつ割り当てられています。この
メソッドはその値を返します。
TrueClass, FalseClass, NilClass, Symbol, Fixnum クラス
のインスタンスなど Immutable(変......らば必ず同じ object_id になります。
これは、Immutable ならば複数の場所から参照されても`破壊的操作'による問題が発生しないので、
同じ内容のインスタンスを複数生成しないという内部実装が理由です。
Symbol#to_iで得られ......で、object_id か __id__ を使用してください。
p "ruby".object_id #=> 22759500
p "ruby".object_id #=> 22759400
p [].object_id #=> 22759360
p [].object_id #=> 22759340
p :ruby.object_id #=> 103538
p :ruby.object_id #=> 103538
p 11.object_id #=> 23
p 11.object_id #... -
Object
# object _ id -> Integer (19) -
各オブジェクトに対して一意な整数を返します。あるオブジェクトに対し てどのような整数が割り当てられるかは不定です。
...クティブなオブジェクト間で
重複しない整数(object_id)が各オブジェクトにひとつずつ割り当てられています。この
メソッドはその値を返します。
TrueClass, FalseClass, NilClass, Symbol, Fixnum クラス
のインスタンスなど Immutable(変......らば必ず同じ object_id になります。
これは、Immutable ならば複数の場所から参照されても`破壊的操作'による問題が発生しないので、
同じ内容のインスタンスを複数生成しないという内部実装が理由です。
Symbol#to_iで得られ......で、object_id か __id__ を使用してください。
p "ruby".object_id #=> 22759500
p "ruby".object_id #=> 22759400
p [].object_id #=> 22759360
p [].object_id #=> 22759340
p :ruby.object_id #=> 103538
p :ruby.object_id #=> 103538
p 11.object_id #=> 23
p 11.object_id #... -
Object
# _ _ id _ _ -> Integer (13) -
各オブジェクトに対して一意な整数を返します。あるオブジェクトに対し てどのような整数が割り当てられるかは不定です。
...クティブなオブジェクト間で
重複しない整数(object_id)が各オブジェクトにひとつずつ割り当てられています。この
メソッドはその値を返します。
TrueClass, FalseClass, NilClass, Symbol, Fixnum クラス
のインスタンスなど Immutable(変......必ず同じ object_id になります。
これは、Immutable ならば複数の場所から参照されても`破壊的操作'による問題が発生しないので、
同じ内容のインスタンスを複数生成しないという内部実装が理由です。
p "ruby".object_id #=> 227......59500
p "ruby".object_id #=> 22759400
p [].object_id #=> 22759360
p [].object_id #=> 22759340
p :ruby.object_id #=> 103538
p :ruby.object_id #=> 103538
p 11.object_id #=> 23
p 11.object_id #=> 23
p true.object_id #=> 2
p true.object_id #=> 2
@see Object#equal?,Symbol... -
Object
# object _ id -> Integer (13) -
各オブジェクトに対して一意な整数を返します。あるオブジェクトに対し てどのような整数が割り当てられるかは不定です。
...クティブなオブジェクト間で
重複しない整数(object_id)が各オブジェクトにひとつずつ割り当てられています。この
メソッドはその値を返します。
TrueClass, FalseClass, NilClass, Symbol, Fixnum クラス
のインスタンスなど Immutable(変......必ず同じ object_id になります。
これは、Immutable ならば複数の場所から参照されても`破壊的操作'による問題が発生しないので、
同じ内容のインスタンスを複数生成しないという内部実装が理由です。
p "ruby".object_id #=> 227......59500
p "ruby".object_id #=> 22759400
p [].object_id #=> 22759360
p [].object_id #=> 22759340
p :ruby.object_id #=> 103538
p :ruby.object_id #=> 103538
p 11.object_id #=> 23
p 11.object_id #=> 23
p true.object_id #=> 2
p true.object_id #=> 2
@see Object#equal?,Symbol... -
Object
# _ _ send _ _ (name , *args) -> object (7) -
オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。
...し制限
にかかわらず任意のメソッドを呼び出せます。
d:spec/def#limit も参照してください。
@param name 文字列かSymbol で指定するメソッド名です。
@param args 呼び出すメソッドに渡す引数です。
p -365.send(:abs) #=> 365
p "ruby".send(......メソッドを呼び出す
# レシーバは任意(Foo クラスのインスタンスである必要もない)
p Foo.new.send(methods[1]) # => "foo"
p Foo.new.send(methods[2]) # => "bar"
p Foo.new.send(methods[3]) # => "baz"
@see Object#method, Kernel.#eval, Proc, Method... -
Object
# _ _ send _ _ (name , *args) { . . . . } -> object (7) -
オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。
...し制限
にかかわらず任意のメソッドを呼び出せます。
d:spec/def#limit も参照してください。
@param name 文字列かSymbol で指定するメソッド名です。
@param args 呼び出すメソッドに渡す引数です。
p -365.send(:abs) #=> 365
p "ruby".send(......メソッドを呼び出す
# レシーバは任意(Foo クラスのインスタンスである必要もない)
p Foo.new.send(methods[1]) # => "foo"
p Foo.new.send(methods[2]) # => "bar"
p Foo.new.send(methods[3]) # => "baz"
@see Object#method, Kernel.#eval, Proc, Method... -
Object
# clone -> object (7) -
オブジェクトの複製を作成して返します。
...lone や dup は浅い(shallow)コピーであることに注意してください。後述。
@raise TypeError TrueClass, FalseClass, NilClass,
Symbol, そして Numeric クラスのインスタンスなど一部の
オブジェクトを複製しようとすると発生します。
obj =......) #=> true
p(obj_d.tainted?) #=> true
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
@see Object#initialize_copy
==== 深いコピーと浅いコピー
clone や dup はオブジェクト自身を複製するだけで、オブジェクト... -
Object
# dup -> object (7) -
オブジェクトの複製を作成して返します。
...lone や dup は浅い(shallow)コピーであることに注意してください。後述。
@raise TypeError TrueClass, FalseClass, NilClass,
Symbol, そして Numeric クラスのインスタンスなど一部の
オブジェクトを複製しようとすると発生します。
obj =......) #=> true
p(obj_d.tainted?) #=> true
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false
@see Object#initialize_copy
==== 深いコピーと浅いコピー
clone や dup はオブジェクト自身を複製するだけで、オブジェクト... -
Object
# equal?(other) -> bool (7) -
other が self 自身の時、真を返します。
...Object#object_idが一致する
かどうかを調べます。
@param other 比較するオブジェクトです。
p("foo".equal?("bar")) #=> false
p("foo".equal?("foo")) #=> false
p(4.equal?(4)) #=> true
p(4.equal?(4.0)) #=> false
p(:foo.equal? :foo) #=> true
@see Object#object_id......,Object#==,Object#eql?,Symbol... -
Object
# hash -> Fixnum (7) -
オブジェクトのハッシュ値を返します。Hash クラスでオブジェク トを格納するのに用いられています。
...トのハッシュ値を返します。Hash クラスでオブジェク
トを格納するのに用いられています。
メソッド hash は Object#eql? と組み合わせて Hash クラスで利用されます。その際
A.eql?(B) ならば A.hash == B.hash
の関係を必ず満たして......再定義した時には必ずこちらも合わせ
て再定義してください。
デフォルトでは、Object#object_id と同じ値を返します。
ただし、Fixnum, Symbol, String だけは組込みのハッ
シュ関数が使用されます(これを変えることはできません)......す。Fixnumに収まらない場合は切り捨てられます。
p self.hash #=> 21658870
p 0.hash #=> 1
p 0.0.hash #=> 0
p nil.hash #=> 4
p "ruby".hash #=> -241670986
p "ruby".hash #=> -241670986
p :ruby.hash #=> 103538
p :ruby.hash #=> 103538
@see Object#eql?,Object#__id__... -
Object
# instance _ variable _ defined?(var) -> bool (7) -
インスタンス変数 var が定義されていたら真を返します。
...インスタンス変数 var が定義されていたら真を返します。
@param var インスタンス変数名を文字列か Symbol で指定します。
class Fred
def initialize(p1, p2)
@a, @b = p1, p2
end
end
fred = Fred.new('cat', 99)
p fred.instance_variab......le_defined?(:@a) #=> true
p fred.instance_variable_defined?("@b") #=> true
p fred.instance_variable_defined?("@c") #=> false
@see Object#instance_variable_get,Object#instance_variable_set,Object#instance_variables... -
Object
# instance _ variable _ get(var) -> object|nil (7) -
オブジェクトのインスタンス変数の値を取得して返します。
...列か Symbol で指定します。
class Foo
def initialize
@foo = 1
end
end
obj = Foo.new
p obj.instance_variable_get("@foo") #=> 1
p obj.instance_variable_get(:@foo) #=> 1
p obj.instance_variable_get(:@bar) #=> nil
@see Object#instance_......variable_set,Object#instance_variables,Object#instance_variable_defined?... -
Object
# instance _ variable _ set(var , value) -> object (7) -
オブジェクトのインスタンス変数 var に値 value を設定します。
...列か Symbol で指定します。
@param value 設定する値です。
@return value を返します。
obj = Object.new
p obj.instance_variable_set("@foo", 1) #=> 1
p obj.instance_variable_set(:@foo, 2) #=> 2
p obj.instance_variable_get(:@foo) #=> 2
@see Object#instance......_variable_get,Object#instance_variables,Object#instance_variable_defined?... -
Object
# method(name) -> Method (7) -
オブジェクトのメソッド name をオブジェクト化した Method オブジェクトを返します。
...ソッド名をSymbol またはStringで指定します。
@raise NameError 定義されていないメソッド名を引数として与えると発生します。
me = -365.method(:abs)
p me #=> #<Method: Fixnum#abs>
p me.call #=> 365
@see Module#instance_method,Method,Object#__send__,Kerne... -
Object
# method _ missing(name , *args) -> object (7) -
呼びだされたメソッドが定義されていなかった時、Rubyインタプリタがこのメソッド を呼び出します。
...れていなかった時、Rubyインタプリタがこのメソッド
を呼び出します。
呼び出しに失敗したメソッドの名前 (Symbol) が name に
その時の引数が第二引数以降に渡されます。
デフォルトではこのメソッドは例外 NameError を発生... -
Object
# public _ send(name , *args) -> object (7) -
オブジェクトの public メソッド name を args を引数にして呼び出し、メソッ ドの実行結果を返します。
...を args を引数にして呼び出し、メソッ
ドの実行結果を返します。
1.public_send(:+, 2) # => 3
@param name 文字列かSymbol で指定するメソッド名です。
@param args 呼び出すメソッドに渡す引数です。
@raise ArgumentError name を指定しな......かった場合に発生します。
@raise NoMethodError protected メソッドや private メソッドに対して実行
した場合に発生します。
1.public_send(:puts, "hello") # => NoMethodError
@see Object#send... -
Object
# respond _ to?(name , include _ private = false) -> bool (7) -
オブジェクトが public メソッド name を持つとき真を返します。 include_private が真のときは private メソッドに対しても真を返します。
...ド name を持つというのは、
オブジェクトが メソッド name に応答することができることをいいます。
@param name Symbol または文字列で指定するメソッド名です。
class F
def hello
"Bonjour"
end
end
class D
private
def h... -
Object
# send(name , *args) -> object (7) -
オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。
...し制限
にかかわらず任意のメソッドを呼び出せます。
d:spec/def#limit も参照してください。
@param name 文字列かSymbol で指定するメソッド名です。
@param args 呼び出すメソッドに渡す引数です。
p -365.send(:abs) #=> 365
p "ruby".send(......メソッドを呼び出す
# レシーバは任意(Foo クラスのインスタンスである必要もない)
p Foo.new.send(methods[1]) # => "foo"
p Foo.new.send(methods[2]) # => "bar"
p Foo.new.send(methods[3]) # => "baz"
@see Object#method, Kernel.#eval, Proc, Method... -
Object
# send(name , *args) { . . . . } -> object (7) -
オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。
...し制限
にかかわらず任意のメソッドを呼び出せます。
d:spec/def#limit も参照してください。
@param name 文字列かSymbol で指定するメソッド名です。
@param args 呼び出すメソッドに渡す引数です。
p -365.send(:abs) #=> 365
p "ruby".send(......メソッドを呼び出す
# レシーバは任意(Foo クラスのインスタンスである必要もない)
p Foo.new.send(methods[1]) # => "foo"
p Foo.new.send(methods[2]) # => "bar"
p Foo.new.send(methods[3]) # => "baz"
@see Object#method, Kernel.#eval, Proc, Method... -
Object
# singleton _ class -> Class (7) -
レシーバの特異クラスを返します。 まだ特異クラスがなければ、新しく作成します。
...Class,
FalseClass を返します。
@raise TypeError レシーバが Fixnum か Symbol の場合に発生します。
Object.new.singleton_class #=> #<Class:#<Object:0xb7ce1e24>>
String.singleton_class #=> #<Class:String>
nil.singleton_class #=> NilClass
@see Object#class... -
Object
# singleton _ method _ added(name) -> object (7) -
特異メソッドが追加された時にインタプリタから呼び出されます。
...ッド名が Symbol で渡されます。
class Foo
def singleton_method_added(name)
puts "singleton method \"#{name}\" was added"
end
end
obj = Foo.new
def obj.foo
end
#=> singleton method "foo" was added
@see Module#method_added,Object#singleton_meth... -
Object
# singleton _ method _ removed(name) -> object (7) -
特異メソッドが Module#remove_method に より削除された時にインタプリタから呼び出されます。
...通常のメソッドの削除に対するフックには
Module#method_removedを使います。
@param name 削除されたメソッド名が Symbol で渡されます。
class Foo
def singleton_method_removed(name)
puts "singleton method \"#{name}\" was removed"
end......end
obj = Foo.new
def obj.foo
end
class << obj
remove_method :foo
end
#=> singleton method "foo" was removed
@see Module#method_removed,Object#singleton_method_added,Object#singleton_method_undefined... -
Object
# singleton _ method _ undefined(name) -> object (7) -
特異メソッドが Module#undef_method または undef により未定義にされた時にインタプリタから呼び出されます。
...メソッドの未定義に対するフックには
Module#method_undefined を使います。
@param name 未定義にされたメソッド名が Symbol で渡されます。
class Foo
def singleton_method_undefined(name)
puts "singleton method \"#{name}\" was undefined"
e.......bar
end
class << obj
undef_method :foo
end
obj.instance_eval {undef bar}
#=> singleton method "foo" was undefined
# singleton method "bar" was undefined
@see Module#method_undefined,Object#singleton_method_added,Object#singleton_method_removed , d:spec/def#undef...
