るりまサーチ

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

別のキーワード

  1. module attr
  2. module private
  3. module public
  4. module protected
  5. module new

クラス

モジュール

検索結果

<< < ... 10 11 12 >>

UnboundMethod (20.0)

レシーバを持たないメソッドを表すクラスです。 呼び出すためにはレシーバにバインドする必要があります。

...シーバを持たないメソッドを表すクラスです。
呼び出すためにはレシーバにバインドする必要があります。

Module
#instance_method や
Method#unbind により生成し、後で
UnboundMethod#bind によりレシーバを
割り当てた Method オブジェク...
...とができます。

//emlist[例: Method クラスの冒頭にある例を UnboundMethod で書くと以下のようになります。][ruby]{
class
Foo
def foo() "foo" end
def bar() "bar" end
def baz() "baz" end
end

# 任意のキーとメソッドの関係をハッシュに保持して...
...mlist[例: 以下はメソッドの再定義を UnboundMethod を使って行う方法です。普通は alias や super を使います。][ruby]{
class
Foo
def foo
p :foo
end
@@orig_foo = instance_method :foo
def foo
p :bar
@@orig_foo.bind(self).call
end
end

Foo.new.foo

# =...

Enumerator::Lazy.new(obj, size=nil) {|yielder, *values| ... } -> Enumerator::Lazy (14.0)

Lazy Enumerator を作成します。Enumerator::Lazy#force メソッドなどに よって列挙が実行されたとき、objのeachメソッドが実行され、値が一つずつ ブロックに渡されます。ブロックは、yielder を使って最終的に yield される値を 指定できます。

...指定できます。

//emlist[Enumerable#filter_map と、その遅延評価版を定義する例][ruby]{
module
Enumerable
def filter_map(&block)
map(&block).compact
end
end

class
Enumerator::Lazy
def filter_map
Lazy.new(self) do |yielder, *values|
result = yield *values...

Object#public_method(name) -> Method (14.0)

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

...vate メソッド名を引数として与えると発生します。

//emlist[][ruby]{
1.public_method(:to_int) #=> #<Method: Integer#to_int>
1.public_method(:p) # method `p' for class `Integer' is private (NameError)
//}

@see Object#method,Object#public_send,Module#public_instance_method...

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

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

...ngで指定します。
@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, Object#method...
<< < ... 10 11 12 >>