るりまサーチ

最速Rubyリファレンスマニュアル検索!
48件ヒット [1-48件を表示] (0.413秒)
トップページ > クエリ:def_delegator[x] > クエリ:def_instance_delegator[x]

別のキーワード

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

ライブラリ

モジュール

キーワード

検索結果

Forwardable#def_delegator(accessor, method, ali = method) -> () (18120.0)

メソッドの委譲先を設定します。

...省略することが可能です。

def_delegator
def_instance_delegator の別名になります。

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

class MyQueue
extend Forwardable
attr_reader :queue
def initialize
@queue = []
end

def_delegator
:@queue, :push, :mypush
end

q = MyQ...
...ueue.new
q.mypush 42
q.queue # => [42]
q.push 23 # => NoMethodError
//}

@see Forwardable#def_delegators...

Forwardable#def_instance_delegator(accessor, method, ali = method) -> () (18120.0)

メソッドの委譲先を設定します。

...省略することが可能です。

def_delegator
def_instance_delegator の別名になります。

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

class MyQueue
extend Forwardable
attr_reader :queue
def initialize
@queue = []
end

def_delegator
:@queue, :push, :mypush
end

q = MyQ...
...ueue.new
q.mypush 42
q.queue # => [42]
q.push 23 # => NoMethodError
//}

@see Forwardable#def_delegators...

Forwardable#def_instance_delegators(accessor, *methods) -> () (6124.0)

メソッドの委譲先をまとめて設定します。

...うになります。

def_delegator
s は def_instance_delegators の別名になります。

また、以下の 2 つの例は同じ意味です。

def_delegator
s :@records, :size, :<<, :map

def_delegator
:@records, :size
def_delegator
:@records, :<<
def_delegator
:@records, :map

@see F...

SingleForwardable (18.0)

オブジェクトに対し、メソッドの委譲機能を定義するモジュールです。

...

オブジェクトに対して extend して使います。

例:

require 'forwardable'
g = Goo.new
g.extend SingleForwardable
g.def_delegator("@out", :puts)
g.puts ...

また、SingleForwardable はクラスやモジュールに対して以下のようにする事もできます。...
...end
end

module Facade
extend SingleForwardable
def_delegator
:Implementation, :service
end

Facade.service # => serviced!

もし Forwardable と SingleForwardable の両方を使いたい場合、
def_instance_delegator
と def_single_delegator メソッドの方を呼び出し...