Sha256: f88f8d4434e4e89df5a0c1611869dd64981f1481c88fb1356b5b721fae8d8b40

Contents?: true

Size: 409 Bytes

Versions: 6

Compression:

Stored size: 409 Bytes

Contents

# frozen_string_literal: true

module Selfies
  # Generates a class method for any described instance methods.
  class Selfie
    def self.generate(class_name, *method_names)
      class_name.class_eval do
        method_names.each do |method_name|
          define_singleton_method(method_name) do |*args|
            new(*args).public_send(method_name)
          end
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
selfies-1.5.1 lib/selfies/selfie.rb
selfies-1.5.0 lib/selfies/selfie.rb
selfies-1.4.2 lib/selfies/selfie.rb
selfies-1.4.1 lib/selfies/selfie.rb
selfies-1.4.0 lib/selfies/selfie.rb
selfies-1.3.1 lib/selfies/selfie.rb