るりまサーチ

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

別のキーワード

  1. _builtin new
  2. _builtin inspect
  3. _builtin []
  4. _builtin to_s
  5. _builtin each

ライブラリ

クラス

キーワード

検索結果

Object#methods(include_inherited = true) -> [Symbol] (26321.0)

そのオブジェクトに対して呼び出せるメソッド名の一覧を返します。 このメソッドは public メソッドおよび protected メソッドの名前を返します。

...のメソッドは public メソッドおよび protected メソッドの名前を返します。

ただし特別に、引数が偽の時は Object#singleton_methods(false) と同じになっています。


@param include_inherited 引数が偽の時は Object#singleton_methods(false) と同じ...
...def private_parent() end
protected; def protected_parent() end
public
; def public_parent() end
end

class Foo < Parent
private; def private_foo() end
protected; def protected_foo() end
public
; def public_foo() end
end

obj = Foo.new
class <<obj
private; def priva...
...; def public_singleton() end
end

# あるオブジェクトの応答できるメソッドの一覧を得る。
p obj.methods(false)
p obj.public_methods(false)
p obj.private_methods(false)
p obj.protected_methods(false)

# 実行結果
[:protected_singleton, :public_singleton]
[:public_single...

Object#public_methods(include_inherited = true) -> [Symbol] (20242.0)

そのオブジェクトが理解できる public メソッド名の一覧を返します。

...が理解できる public メソッド名の一覧を返します。

@param include_inherited 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。


@see Module#public_instance_methods,Object#methods,Object#singleton_methods...

Module#public_instance_methods(inherited_too = true) -> [Symbol] (20236.0)

そのモジュールで定義されている public メソッド名 の一覧を配列で返します。

...そのモジュールで定義されている public メソッド名
の一覧を配列で返します。

@param inherited_too false を指定するとそのモジュールで定義されているメソッドのみ返します。


@see Object#public_methods, Module#instance_methods...

Module#instance_methods(inherited_too = true) -> [Symbol] (14261.0)

そのモジュールで定義されている public および protected メソッド名 の一覧を配列で返します。

...ジュールで定義されている public および protected メソッド名
の一覧を配列で返します。

@param inherited_too false を指定するとそのモジュールで定義されているメソッドのみ返します。

@see Object#methods

//emlist[例1][ruby]{
class Foo
pr...
...d; def protected_foo() end
public
; def public_foo() end
end

# あるクラスのインスタンスメソッドの一覧を得る
p Foo.instance_methods(false)
p Foo.public_instance_methods(false)
p Foo.private_instance_methods(false)
p Foo.protected_instance_methods(false)

class Bar < Foo...
...end
//}

実行結果

[:protected_foo, :public_foo]
[:public_foo]
[:private_foo]
[:protected_foo]

//emlist[例2][ruby]{
class Bar
private; def private_foo() end
protected; def protected_foo() end
public
; def public_foo() end
end

# あるクラスのインスタ...

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

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

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

inherited_too が真のときは継承した特異メソッドを含みます。
継承した特異メソッドとは Object#extend によって追...
...の場合はスーパークラスのクラスメソッド(Classのインスタンスの特異メソッド)などです。

singleton_methods(false) は、Object#methods(false) と同じです。

@param inherited_too 継承した特異メソッドを含める場合は真を、...
...nt() end
protected; def protected_class_parent() end
public
; def public_class_parent() end
end

Foo = Class.new(Parent)

class <<Foo
private; def private_class_foo() end
protected; def protected_class_foo() end
public
; def public_class_foo() end
end

module Bar
private; def pri...

絞り込み条件を変える

main (8096.0)

トップレベルでの self を表すオブジェクトです。

..._private_methods = private_methods(false)
basic_public_methods = public_methods(false)
private def explicit_private_method
end

# トップレベルで定義したメソッドは main オブジェクトの private メソッドと して定義される
def implicit_private_method
end

public
def expl...
...thod のみを取得する
p private_methods(false) - basic_private_methods
# => [:explicit_private_method, :implicit_private_method]

# main オブジェクトで独自定義した public method のみを取得する
p public_methods(false) - basic_public_methods
# => [:explicit_public_method]
//}...

Method (8072.0)

Object#method によりオブジェクト化され たメソッドオブジェクトのクラスです。

...シュに保持しておく
methods
= {1 => obj.method(:foo),
2 => obj.method(:bar),
3 => obj.method(:baz)}

# キーを使って関連するメソッドを呼び出す
p methods[1].call # => "foo"
p methods[2].call # => "bar"
p methods[3].call # => "baz"
//}...
...#public_sendを使う方法も有用。

//emlist[例][ruby]{
class Foo
def foo() "foo" end
def bar() "bar" end
def baz() "baz" end
end

# 任意のキーとメソッド(の名前)の関係をハッシュに保持しておく
# レシーバの情報がここにはないことに注意
methods
...
...関連するメソッドを呼び出す
# レシーバは任意(Foo クラスのインスタンスである必要もない)
p Foo.new.public_send(methods[1]) # => "foo"
p Foo.new.public_send(methods[2]) # => "bar"
p Foo.new.public_send(methods[3]) # => "baz"
//}

@see Object#method...

Object#send(name, *args) -> object (8042.0)

オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。

...にかかわらず任意のメソッドを呼び出せます。
d:spec/def#limit も参照してください。

public
メソッドだけ呼び出せれば良い場合は
Object#public_send を使う方が良いでしょう。

@param name 文字列かSymbol で指定するメソッド名です。...
...ないことに注意
methods
= {1 => :foo,
2 => :bar,
3 => :baz}

# キーを使って関連するメソッドを呼び出す
# レシーバは任意(Foo クラスのインスタンスである必要もない)
p Foo.new.send(methods[1]) # => "foo"
p Foo.new.send(methods[2]) # => "bar"...
...p Foo.new.send(methods[3]) # => "baz"
//}

@see Object#public_send, BasicObject#__send__, Object#method, Kernel.#eval, Proc, Method...

Object#send(name, *args) { .... } -> object (8042.0)

オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。

...にかかわらず任意のメソッドを呼び出せます。
d:spec/def#limit も参照してください。

public
メソッドだけ呼び出せれば良い場合は
Object#public_send を使う方が良いでしょう。

@param name 文字列かSymbol で指定するメソッド名です。...
...ないことに注意
methods
= {1 => :foo,
2 => :bar,
3 => :baz}

# キーを使って関連するメソッドを呼び出す
# レシーバは任意(Foo クラスのインスタンスである必要もない)
p Foo.new.send(methods[1]) # => "foo"
p Foo.new.send(methods[2]) # => "bar"...
...p Foo.new.send(methods[3]) # => "baz"
//}

@see Object#public_send, BasicObject#__send__, Object#method, Kernel.#eval, Proc, Method...