るりまサーチ

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

別のキーワード

  1. open3 popen2e
  2. socket af_e164
  3. matrix det_e
  4. matrix determinant_e
  5. matrix rank_e

ライブラリ

モジュール

キーワード

検索結果

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

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

...譲先を設定します。

@param accessor 委譲先のオブジェクト

@param method 委譲先のメソッド

@param ali 委譲元のメソッド

委譲元のオブジェクトで ali が呼び出された場合に、
委譲先のオブジェクトの method へ処理が委譲されるよう...
...ali を省略することが可能です。

def_delegator
は def_instance_delegator の別名になります。

例:

require
'forwardable'
class MyQueue
e
xtend Forwardable
attr_reader :queue
def initialize
@queue = []
e
nd

def_delegator
:@queue, :push, :mypush
e
nd...
...q = MyQueue.new
q.mypush 42
q.queue # => [42]
q.push 23 # => NoMethodError

@see Forwardable#def_delegators...

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

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

...譲先を設定します。

@param accessor 委譲先のオブジェクト

@param method 委譲先のメソッド

@param ali 委譲元のメソッド

委譲元のオブジェクトで ali が呼び出された場合に、
委譲先のオブジェクトの method へ処理が委譲されるよう...
...ali を省略することが可能です。

def_delegator
は def_instance_delegator の別名になります。

例:

require
'forwardable'
class MyQueue
e
xtend Forwardable
attr_reader :queue
def initialize
@queue = []
e
nd

def_delegator
:@queue, :push, :mypush
e
nd...
...q = MyQueue.new
q.mypush 42
q.queue # => [42]
q.push 23 # => NoMethodError

@see Forwardable#def_delegators...

SingleForwardable (12024.0)

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

... extend して使います。

例:

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

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

require
'forwardable'
class I...
...mplementation
def self.service
puts "serviced!"
e
nd
e
nd

module Facade
e
xtend SingleForwardable
def_delegator
:Implementation, :service
e
nd

Facade.service # => serviced!

もし Forwardable と SingleForwardable の両方を使いたい場合、
def_instance_delegato...
...r と def_single_delegator メソッドの方を呼び出して
ください。...