    # File lib/facets/more/enumerablepass.rb, line 57
      def self.wrap_enumerable_method( methodname )

        m = methodname
        meth = Enumerable.instance_method(m)
        arity = meth.arity

        case arity <=> 0
        when 0
          class_eval %{
            def #{m}( *args, &yld )
              enum_for(:each, *args).#{m}( &yld )
            end
          }
        when 1
          class_eval %{
            def #{m}( *args, &yld )
              args, each_args = args[0...#{arity}], args[#{arity}..-1]
              enum_for(:each, *each_args).#{m}( *args, &yld )
            end
          }
        else
          class_eval %{
            def #{m}( *args, &yld )
              enum_for(:each).#{m}( *args, &yld )
            end
          }
        end
      end