るりまサーチ (Ruby 3.3)

最速Rubyリファレンスマニュアル検索!
4件ヒット [1-4件を表示] (0.080秒)
トップページ > クエリ:i[x] > クエリ:class[x] > クエリ:Class[x] > バージョン:3.3[x] > ライブラリ:forwardable[x]

別のキーワード

  1. argf.class lines
  2. argf.class each
  3. argf.class each_line
  4. class new
  5. argf.class gets

検索結果

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...