class Module < Object
module Foo mixin_requires :foo, :bar
def xyz # If foo and bar are not defined in the derived class, then this will # raise an exception, so it's best to know that this won't work at # load-time. foo bar end end
class Bar def foo puts "foo" end
def bar puts "bar" end
# This must come last, because foo and bar must be defined before # including Foo. If they are not defined, then an exception will be # thrown. include Foo end
Require that the class/module that a mixin is being included in MUST define certain methods.
|args||A list of Symbols and Integers. When a Sybmbol, indicates the given method must be defined. When an Integer, indicates the desired arity of the method indicated by the previous Symbol.|