Skip to content

Instantly share code, notes, and snippets.

@charly
Created August 19, 2009 17:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save charly/170469 to your computer and use it in GitHub Desktop.
Save charly/170469 to your computer and use it in GitHub Desktop.
require 'rubygems'
require 'mixology'
module Callback
def before_filter filter, filtered_method
Callback.method_factory(filter, filtered_method)
end
# Needed defin_method here so it's called in module's context
def self.method_factory(filter, filtered_method)
define_method(filtered_method) do
send filter
super
end
end
end
class Coffee
def spoon_required
puts "get a spoon to steer sugar || creme"
end
def cost
puts "3"
end
def taste
puts "African Arabica"
end
end
coffee = Coffee.new
coffee.mixin Callback
coffee.before_filter :spoon_required, :cost
coffee.cost
coffee.cost
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment