44件ヒット
[1-44件を表示]
(0.179秒)
別のキーワード
種類
- インスタンスメソッド (33)
- モジュール (11)
ライブラリ
- forwardable (44)
モジュール
- Forwardable (33)
キーワード
- SingleForwardable (11)
-
def
_ instance _ delegator (11) -
def
_ instance _ delegators (11)
検索結果
先頭4件
-
Forwardable
# def _ delegator(accessor , method , ali = method) -> () (18220.0) -
メソッドの委譲先を設定します。
...ソッド
@param ali 委譲元のメソッド
委譲元のオブジェクトで ali が呼び出された場合に、
委譲先のオブジェクトの method へ処理が委譲されるようになります。
委譲元と委譲先のメソッド名が同じ場合は, ali を省略すること......が可能です。
def_delegator は def_instance_delegator の別名になります。
例:
require 'forwardable'
class MyQueue
extend Forwardable
attr_reader :queue
def initialize
@queue = []
end
def_delegator :@queue, :push, :mypush
end
q = MyQueue.new
q.m......ypush 42
q.queue # => [42]
q.push 23 # => NoMethodError
@see Forwardable#def_delegators... -
Forwardable
# def _ instance _ delegators(accessor , *methods) -> () (9231.0) -
メソッドの委譲先をまとめて設定します。
...うになります。
def_delegators は def_instance_delegators の別名になります。
また、以下の 2 つの例は同じ意味です。
def_delegators :@records, :size, :<<, :map
def_delegator :@records, :size
def_delegator :@records, :<<
def_delegator :@records, :map
@see F... -
Forwardable
# def _ instance _ delegator(accessor , method , ali = method) -> () (9220.0) -
メソッドの委譲先を設定します。
...ソッド
@param ali 委譲元のメソッド
委譲元のオブジェクトで ali が呼び出された場合に、
委譲先のオブジェクトの method へ処理が委譲されるようになります。
委譲元と委譲先のメソッド名が同じ場合は, ali を省略すること......が可能です。
def_delegator は def_instance_delegator の別名になります。
例:
require 'forwardable'
class MyQueue
extend Forwardable
attr_reader :queue
def initialize
@queue = []
end
def_delegator :@queue, :push, :mypush
end
q = MyQueue.new
q.m......ypush 42
q.queue # => [42]
q.push 23 # => NoMethodError
@see Forwardable#def_delegators... -
SingleForwardable (6018.0)
-
オブジェクトに対し、メソッドの委譲機能を定義するモジュールです。
...require 'forwardable'
g = Goo.new
g.extend SingleForwardable
g.def_delegator("@out", :puts)
g.puts ...
また、SingleForwardable はクラスやモジュールに対して以下のようにする事もできます。
require 'forwardable'
class Implementation
def self.service......puts "serviced!"
end
end
module Facade
extend SingleForwardable
def_delegator :Implementation, :service
end
Facade.service # => serviced!
もし Forwardable と SingleForwardable の両方を使いたい場合、
def_instance_delegator と def_single_delegator メソッ...