るりまサーチ

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

別のキーワード

  1. csv instance
  2. prime instance
  3. syslog instance
  4. _builtin instance_eval
  5. basicobject instance_eval

ライブラリ

クラス

検索結果

<< 1 2 3 > >>

Module#instance_method(name) -> UnboundMethod (18156.0)

self のインスタンスメソッド name をオブジェクト化した UnboundMethod を返します。

...undMethod を返します。

@
param name メソッド名を Symbol または String で指定します。

@
raise NameError self に存在しないメソッドを指定した場合に発生します。

@
see Module#public_instance_method, Object#method

//emlist[例][ruby]{
class Interpreter
def...
...do_e() print "!\n"; end
def do_v() print "Dave"; end
Dispatcher = {
"a" => instance_method(:do_a),
"d" => instance_method(:do_d),
"e" => instance_method(:do_e),
"v" => instance_method(:do_v)
}
def interpret(string)
string.each_char {|b| Dispatcher[b].bind(self).ca...

Module#public_instance_method(name) -> UnboundMethod (6144.0)

self の public インスタンスメソッド name をオブジェクト化した UnboundMethod を返します。

...返します。

@
param name メソッド名を Symbol または String で指定します。

@
raise NameError 定義されていないメソッド名や、
protected メソッド名、 private メソッド名を引数として与えると発生します。

//emlist[例][ruby]{
Kernel.publi...
...c_instance_method(:object_id) #=> #<UnboundMethod: Kernel#object_id>
Kernel.public_instance_method(:p) # method `p' for module `Kernel' is private (NameError)
//}

@
see Module#instance_method,Object#public_method...

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

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

...び protected メソッド名
の一覧を配列で返します。

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

@
see Object#methods

//emlist[例1][ruby]{
class Foo
private; def private_foo() end
protected; def...
...oo.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]{...
...ar.instance_methods(true) - Object.instance_methods(true)
p Bar.public_instance_methods(true) - Object.public_instance_methods(true)
p Bar.private_instance_methods(true) - Object.private_instance_methods(true)
p Bar.protected_instance_methods(true) - Object.protected_instance_methods(...

Module#private_instance_methods(inherited_too = true) -> [Symbol] (6119.0)

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

...ソッド名
の一覧を配列で返します。

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

@
see Object#private_methods, Module#instance_methods

//emlist[例][ruby]{
module Foo
def foo; end
private def bar; end...
...end

module Bar
include Foo

def baz; end
private def qux; end
end

Bar.private_instance_methods # => [:qux, :bar]
Bar.private_instance_methods(false) # => [:qux]
//}...

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

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

...す。

@
param name メソッド名をSymbol またはStringで指定します。
@
raise NameError 定義されていないメソッド名を引数として与えると発生します。

//emlist[][ruby]{
class Demo
def initialize(n)
@
iv = n
end
def hello()
"Hello, @iv = #{@iv}"
end...
...end

k = Demo.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, Ob...

絞り込み条件を変える

Module#define_method(name) { ... } -> Symbol (37.0)

インスタンスメソッド name を定義します。

...val されます。

@
param name メソッド名を String または Symbol を指定します。

@
param method Proc、Method あるいは UnboundMethod の
いずれかのインスタンスを指定します。

@
return メソッド名を表す Symbol を返します。

@
raise TypeError me...
...thod に同じクラス、サブクラス、モジュール以外のメソッ
ドを指定した場合に発生します。

//emlist[例][ruby]{
class Foo
def foo() p :foo end
define_method(:bar, instance_method(:foo))
end
Foo.new.bar # => :foo
//}...

Module#define_method(name, method) -> Symbol (37.0)

インスタンスメソッド name を定義します。

...val されます。

@
param name メソッド名を String または Symbol を指定します。

@
param method Proc、Method あるいは UnboundMethod の
いずれかのインスタンスを指定します。

@
return メソッド名を表す Symbol を返します。

@
raise TypeError me...
...thod に同じクラス、サブクラス、モジュール以外のメソッ
ドを指定した場合に発生します。

//emlist[例][ruby]{
class Foo
def foo() p :foo end
define_method(:bar, instance_method(:foo))
end
Foo.new.bar # => :foo
//}...

UnboundMethod#bind(obj) -> Method (37.0)

self を obj にバインドした Method オブジェクトを生成して返します。

...ェクトを生成して返します。


@
param obj 自身をバインドしたいオブジェクトを指定します。ただしバインドできるのは、
生成元のクラスかそのサブクラスのインスタンスのみです。

@
raise TypeError objがbindできないオ...
...ジェクトである場合に発生します

//emlist[例][ruby]{
# クラスのインスタンスメソッドの UnboundMethod の場合
class Foo
def foo
"foo"
end
end

# UnboundMethod `m' を生成
p m = Foo.instance_method(:foo) # => #<UnboundMethod: Foo#foo>

# Foo のインスタン...
...p m = Foo.instance_method(:foo) # => #<UnboundMethod: Foo#foo>

# Foo をインクルードしたクラス Bar のインスタンスをレシーバと
# する Method オブジェクトを生成
class Bar
include Foo
end
p m.bind(Bar.new) # => #<Method: Bar(Foo)#foo>
//}

@
see Unboun...

UnboundMethod#source_location -> [String, Integer] | nil (37.0)

ソースコードのファイル名と行番号を配列で返します。

... ruby で定義されていない(つまりネイティブ
である)場合は nil を返します。

//emlist[例][ruby]{
require 'time'

Time.instance_method(:zone).source_location # => nil
Time.instance_method(:httpdate).source_location # => ["/Users/user/.rbenv/versions/2.4.3/lib/ruby/2...
....4.0/time.rb", 654]
//}

@
see Proc#source_location, Method#source_location...
<< 1 2 3 > >>