Skip to content

Instantly share code, notes, and snippets.

@dlisboa
Created April 1, 2014 19:42
Show Gist options
  • Save dlisboa/9921540 to your computer and use it in GitHub Desktop.
Save dlisboa/9921540 to your computer and use it in GitHub Desktop.
require 'delegate'
class User
end
class UserDecorator
def initialize(user)
@user = user
end
end
class UserDelegator < SimpleDelegator
end
class UserClassDelegator < DelegateClass(User)
end
u = UserDecorator.new(User.new)
u.class
u = UserDelegator.new(User.new)
u.class
u = UserClassDelegator.new(User.new)
u.class
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment