204件ヒット
[1-100件を表示]
(0.018秒)
種類
- インスタンスメソッド (144)
- モジュール (24)
- 特異メソッド (24)
- 定数 (12)
モジュール
- Forwardable (108)
- SingleForwardable (72)
キーワード
-
FORWARDABLE
_ VERSION (12) - Forwardable (12)
- SingleForwardable (12)
- debug (12)
- debug= (12)
-
def
_ delegator (24) -
def
_ delegators (24) -
def
_ instance _ delegator (12) -
def
_ instance _ delegators (12) -
def
_ single _ delegator (12) -
def
_ single _ delegators (12) - delegate (24)
-
instance
_ delegate (12) -
single
_ delegate (12)
検索結果
先頭5件
-
Forwardable
:: FORWARDABLE _ VERSION -> String (9102.0) -
forwardable ライブラリのバージョンを返します。
...
forwardable ライブラリのバージョンを返します。... -
Forwardable (6002.0)
-
クラスに対し、メソッドの委譲機能を定義するモジュールです。
...Object#extend して使います。Module#include でないところに注意して下さい。
//emlist[例][ruby]{
require 'forwardable'
class Foo
extend Forwardable
def_delegators("@out", "printf", "print")
def_delegators(:@in, :gets)
def_delegator(:@contents, :[], "content_at")
end... -
SingleForwardable (6002.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 _ delegator(accessor , method , ali = method) -> () (3002.0) -
メソッドの委譲先を設定します。
...emlist[例][ruby]{
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_delegators... -
Forwardable
# def _ delegators(accessor , *methods) -> () (3002.0) -
メソッドの委譲先をまとめて設定します。
..._delegators は def_instance_delegators の別名になります。
また、以下の 2 つの例は同じ意味です。
def_delegators :@records, :size, :<<, :map
def_delegator :@records, :size
def_delegator :@records, :<<
def_delegator :@records, :map
@see Forwardable#def_delegator... -
Forwardable
# def _ instance _ delegator(accessor , method , ali = method) -> () (3002.0) -
メソッドの委譲先を設定します。
...emlist[例][ruby]{
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_delegators... -
Forwardable
# def _ instance _ delegators(accessor , *methods) -> () (3002.0) -
メソッドの委譲先をまとめて設定します。
..._delegators は def_instance_delegators の別名になります。
また、以下の 2 つの例は同じ意味です。
def_delegators :@records, :size, :<<, :map
def_delegator :@records, :size
def_delegator :@records, :<<
def_delegator :@records, :map
@see Forwardable#def_delegator... -
Forwardable
# delegate(hash) -> () (3002.0) -
メソッドの委譲先を設定します。
...String かその配列で指定します。
//emlist[例][ruby]{
require 'forwardable'
class Zap
extend Forwardable
delegate :length => :@str
delegate [:first, :last] => :@arr
def initialize
@arr = %w/foo bar baz/
@str = "world"
end
end
zap = Zap.new... -
Forwardable
# instance _ delegate(hash) -> () (3002.0) -
メソッドの委譲先を設定します。
...String かその配列で指定します。
//emlist[例][ruby]{
require 'forwardable'
class Zap
extend Forwardable
delegate :length => :@str
delegate [:first, :last] => :@arr
def initialize
@arr = %w/foo bar baz/
@str = "world"
end
end
zap = Zap.new...