DZone Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world
Delegation Without Method_missing
With ActiveSupport we get a clean and easy way to implement the delegation pattern:
class QueueManager
attr_accessor :queue
# Delegates some methods to the internal queue
delegate :size, :clear, :to => :queue
def intialize
self.queue = []
end
end
m = QueueManager.new
m.size
# => 0
m.clear
# => []
More info:
- http://www.simonecarletti.com/blog/2009/12/inside-ruby-on-rails-delegate/
- http://github.com/rails/rails/blob/master/activesupport/lib/active_support/core_ext/module/delegation.rb





