種類
- インスタンスメソッド (362)
- モジュール関数 (55)
- 特異メソッド (22)
- クラス (11)
クラス
- BasicObject (154)
- Class (11)
- Module (110)
- Object (77)
- UnboundMethod (10)
モジュール
- Kernel (22)
- ObjectSpace (33)
オブジェクト
- main (22)
キーワード
- ! (11)
- != (11)
- == (11)
-
_ _ id _ _ (11) -
_ _ send _ _ (22) -
_ id2ref (11) - ancestors (11)
-
bind
_ call (10) -
class
_ eval (22) -
define
_ finalizer (22) -
define
_ method (44) - equal? (11)
- eval (22)
-
instance
_ eval (22) -
instance
_ exec (11) - method (11)
-
method
_ added (11) -
method
_ missing (11) -
method
_ removed (11) -
method
_ undefined (11) -
module
_ eval (22) -
public
_ send (22) -
respond
_ to _ missing? (11) - send (22)
-
singleton
_ method (11) -
singleton
_ method _ added (11) -
singleton
_ method _ removed (11) -
singleton
_ method _ undefined (11) - superclass (11)
検索結果
先頭5件
-
BasicObject (52038.0)
-
特殊な用途のために意図的にほとんど何も定義されていないクラスです。 Objectクラスの親にあたります。Ruby 1.9 以降で導入されました。
...スです。
Objectクラスの親にあたります。Ruby 1.9 以降で導入されました。
=== 性質
BasicObject クラスは Object クラスからほとんどのメソッドを取り除いたクラスです。
Object クラスは様々な便利なメソッドや Kernel から受け継い......す。
これに対して、 BasicObject クラスはオブジェクトの同一性を識別したりメソッドを呼んだりする
最低限の機能の他は一切の機能を持っていません。
=== 用途
基本的にはほぼすべてのクラスの親は Object と考えて差し支え......し、ある種のクラスを定義する際には Object クラスは持っているメソッドが多すぎる
場合があります。
例えば、 BasicObject#method_missingを利用して Proxy パターンを実
装する場合にはObject クラスに定義済みのメソッドはプロク... -
BasicObject
# singleton _ method _ added(name) -> object (38214.0) -
特異メソッドが追加された時にインタプリタから呼び出されます。
...Module#method_addedを使います。
@param name 追加されたメソッド名が Symbol で渡されます。
//emlist[例][ruby]{
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,BasicObject#singleton_method_removed,BasicObject#singleton_method_undefined... -
BasicObject
# singleton _ method _ removed(name) -> object (38214.0) -
特異メソッドが Module#remove_method に より削除された時にインタプリタから呼び出されます。
...ドが Module#remove_method に
より削除された時にインタプリタから呼び出されます。
通常のメソッドの削除に対するフックには
Module#method_removedを使います。
@param name 削除されたメソッド名が Symbol で渡されます。
//emlist[例][ru......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,BasicObject#singleton_method_added,BasicObject#singleton_met......hod_undefined... -
BasicObject
# singleton _ method _ undefined(name) -> object (38214.0) -
特異メソッドが Module#undef_method または undef により未定義にされた時にインタプリタから呼び出されます。
...特異メソッドが Module#undef_method または
undef により未定義にされた時にインタプリタから呼び出されます。
通常のメソッドの未定義に対するフックには
Module#method_undefined を使います。
@param name 未定義にされたメソッド名....../emlist[例][ruby]{
class Foo
def singleton_method_undefined(name)
puts "singleton method \"#{name}\" was undefined"
end
end
obj = Foo.new
def obj.foo
end
def obj.bar
end
class << obj
undef_method :foo
end
obj.instance_eval {undef bar}
#=> singleton method "foo" was undefined
# single......ton method "bar" was undefined
//}
@see Module#method_undefined,BasicObject#singleton_method_added,BasicObject#singleton_method_removed , d:spec/def#undef... -
BasicObject
# instance _ exec(*args) {|*vars| . . . } -> object (38108.0) -
与えられたブロックをレシーバのコンテキストで実行します。
...self がレシーバのコンテキストになるので
レシーバの持つインスタンス変数にアクセスすることができます。
@param args ブロックパラメータに渡す値です。
//emlist[例][ruby]{
class KlassWithSecret
def initialize
@secret = 99
end
end
k......= KlassWithSecret.new
# 以下で x には 5 が渡される
k.instance_exec(5) {|x| @secret + x } #=> 104
//}
@see Module#class_exec, Module#module_exec, BasicObject#instance_eval... -
BasicObject
# instance _ eval {|obj| . . . } -> object (35120.0) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。
...ェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを
評価してその結果を返します。
オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行......ということです。
また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。
ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロック......instance_eval でメソッドを定義した場合は、囲むメソッドが実行されたときに
初めて instance_eval 内のメソッドが定義されます。これはメソッド定義のネストと同じです。
d:spec/def#nest_method を参照してください。
BasicObject を継... -
BasicObject
# instance _ eval(expr , filename = "(eval)" , lineno = 1) -> object (35120.0) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。
...ェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを
評価してその結果を返します。
オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行......ということです。
また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。
ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロック......instance_eval でメソッドを定義した場合は、囲むメソッドが実行されたときに
初めて instance_eval 内のメソッドが定義されます。これはメソッド定義のネストと同じです。
d:spec/def#nest_method を参照してください。
BasicObject を継... -
BasicObject
# equal?(other) -> bool (35108.0) -
オブジェクトが other と同一であれば真を、さもなくば偽を返します。
...が other と同一であれば真を、さもなくば偽を返します。
このメソッドは2つのオブジェクトが同一のものであるかどうかを判定します。
一般にはこのメソッドを決して再定義すべきでありません。
ただし、 BasicObject の位......ram other 比較対象となるオブジェクト
@return other が self 自身であれば真、さもなくば偽
//emlist[例][ruby]{
original = "a"
copied = original.dup
substituted = original
original == copied #=> true
original == substituted #=> true
original.equal? copied......#=> false
original.equal? substituted #=> true
//}
@see Object#equal?, Object#==, Object#eql?... -
BasicObject
# _ _ send _ _ (name , *args) -> object (35102.0) -
オブジェクトのメソッド name を args を引数にして呼び出し、メソッドの結果を返します。
...オブジェクトのメソッド name を args を引数にして呼び出し、メソッドの結果を返します。
ブロック付きで呼ばれたときはブロックもそのまま引き渡します。
@param name 呼び出すメソッドの名前。 Symbol または文字列で指定し......//emlist[例][ruby]{
class Mail
def delete(*args)
"(Mail#delete) - delete " + args.join(',')
end
def send(name, *args)
"(Mail#send) - #{name} #{args.join(',')}"
end
end
mail = Mail.new
mail.send :delete, "gentle", "readers" # => "(Mail#send) - delete gentle,readers"
mail.__send......__ :delete, "gentle", "readers" # => "(Mail#delete) - delete gentle,readers"
//}
@see Object#send... -
BasicObject
# _ _ send _ _ (name , *args) { . . . . } -> object (35102.0) -
オブジェクトのメソッド name を args を引数にして呼び出し、メソッドの結果を返します。
...オブジェクトのメソッド name を args を引数にして呼び出し、メソッドの結果を返します。
ブロック付きで呼ばれたときはブロックもそのまま引き渡します。
@param name 呼び出すメソッドの名前。 Symbol または文字列で指定し......//emlist[例][ruby]{
class Mail
def delete(*args)
"(Mail#delete) - delete " + args.join(',')
end
def send(name, *args)
"(Mail#send) - #{name} #{args.join(',')}"
end
end
mail = Mail.new
mail.send :delete, "gentle", "readers" # => "(Mail#send) - delete gentle,readers"
mail.__send......__ :delete, "gentle", "readers" # => "(Mail#delete) - delete gentle,readers"
//}
@see Object#send...