Sha256: 70d4414baebedf7eee568fd77400c442f68f083ec3e02f177bc6bebd6109a213

Contents?: true

Size: 640 Bytes

Versions: 8

Compression:

Stored size: 640 Bytes

Contents

# frozen_string_literal: true

module Gemsmith
  module Skeletons
    # Abstract class from which all skeletons inherit from.
    class BaseSkeleton
      def initialize cli, configuration: Configuration.new
        @cli = cli
        @configuration = configuration
      end

      def self.create cli, configuration: Configuration.new
        new(cli, configuration: configuration).create
      end

      def create
        fail NotImplementedError, "The method, #create, is not implemented yet."
      end

      protected

      attr_reader :cli, :configuration

      def lib_root
        "%gem_name%/lib"
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
gemsmith-7.7.0 lib/gemsmith/skeletons/base_skeleton.rb
gemsmith-7.6.0 lib/gemsmith/skeletons/base_skeleton.rb
gemsmith-7.5.0 lib/gemsmith/skeletons/base_skeleton.rb
gemsmith-7.4.0 lib/gemsmith/skeletons/base_skeleton.rb
gemsmith-7.3.0 lib/gemsmith/skeletons/base_skeleton.rb
gemsmith-7.2.0 lib/gemsmith/skeletons/base_skeleton.rb
gemsmith-7.1.0 lib/gemsmith/skeletons/base_skeleton.rb
gemsmith-7.0.0 lib/gemsmith/skeletons/base_skeleton.rb