Sha256: e29fe02c9fb1eb102d8e19a02d93c518cc764c81f3244d8de761f18269a8b2d9

Contents?: true

Size: 446 Bytes

Versions: 17

Compression:

Stored size: 446 Bytes

Contents

# frozen_string_literal: true

module MyApiClient
  # The abstract class for service classes
  class ServiceAbstract
    private_class_method :new

    def self.call(**args, &block)
      new(**args, &block).send(:call)
    end

    # private

    # def initialize(**_args)
    #   raise "You must implement #{self.class}##{__method__}"
    # end

    # def call
    #   raise "You must implement #{self.class}##{__method__}"
    # end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
my_api_client-0.26.0 lib/my_api_client/service_abstract.rb
my_api_client-0.25.0 lib/my_api_client/service_abstract.rb
my_api_client-0.24.0 lib/my_api_client/service_abstract.rb
my_api_client-0.23.0 lib/my_api_client/service_abstract.rb
my_api_client-0.22.0 lib/my_api_client/service_abstract.rb
my_api_client-0.21.0 lib/my_api_client/service_abstract.rb
my_api_client-0.20.0 lib/my_api_client/service_abstract.rb
my_api_client-0.19.0 lib/my_api_client/service_abstract.rb
my_api_client-0.18.0 lib/my_api_client/service_abstract.rb
my_api_client-0.17.0 lib/my_api_client/service_abstract.rb
my_api_client-0.16.1 lib/my_api_client/service_abstract.rb
my_api_client-0.16.0 lib/my_api_client/service_abstract.rb
my_api_client-0.15.0 lib/my_api_client/service_abstract.rb
my_api_client-0.14.0 lib/my_api_client/service_abstract.rb
my_api_client-0.14.0.pre lib/my_api_client/service_abstract.rb
my_api_client-0.13.0 lib/my_api_client/service_abstract.rb
my_api_client-0.12.0 lib/my_api_client/service_abstract.rb