# File lib/facets/more/paramix.rb, line 117 def extend(*args) params = args.last.is_a?(Hash) ? args.pop : {} args.each do |mod| (class << self; self; end).class_eval do mixin_parameters[mod] = params if mod.basename define_method( mod.basename ) do |key| if params.key?(key) params[key] else super if defined?( super ) end end end end end r = extend_without_parameters(*args) for mod in args if mod.method_defined?(:extended_with_parameters) mod.extended_with_parameters( self, params ) end end r end