4件ヒット
[1-4件を表示]
(0.080秒)
種類
- インスタンスメソッド (3)
- モジュール (1)
モジュール
- Forwardable (3)
キーワード
- SingleForwardable (1)
-
def
_ delegator (1) -
def
_ instance _ delegator (1) -
instance
_ delegate (1)
検索結果
先頭4件
-
SingleForwardable (18043.0)
-
オブジェクトに対し、メソッドの委譲機能を定義するモジュールです。
...ます。
例:
require 'forwardable'
g = Goo.new
g.extend SingleForwardable
g.def_delegator("@out", :puts)
g.puts ...
また、SingleForwardable はクラスやモジュールに対して以下のようにする事もできます。
require 'forwardable'
class Implementation
de.......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... -
Forwardable
# def _ instance _ delegator(accessor , method , ali = method) -> () (9343.0) -
メソッドの委譲先を設定します。
...require 'forwardable'
class MyQueue
extend Forwardable
attr_reader :queue
def initialize
@queue = []
end
def_delegator :@queue, :push, :mypush
end
q = MyQueue.new
q.mypush 42
q.queue # => [42]
q.push 23 # => NoMethodError
@see Forwardable#def_delegato... -
Forwardable
# instance _ delegate(hash) -> () (9343.0) -
メソッドの委譲先を設定します。
...Hash を指定します。キーは Symbol、
String かその配列で指定します。
例:
require 'forwardable'
class Zap
extend Forwardable
delegate :length => :@str
delegate [:first, :last] => :@arr
def initialize
@arr = %w/foo bar baz/... -
Forwardable
# def _ delegator(accessor , method , ali = method) -> () (343.0) -
メソッドの委譲先を設定します。
...require 'forwardable'
class MyQueue
extend Forwardable
attr_reader :queue
def initialize
@queue = []
end
def_delegator :@queue, :push, :mypush
end
q = MyQueue.new
q.mypush 42
q.queue # => [42]
q.push 23 # => NoMethodError
@see Forwardable#def_delegato...