Sha256: e21ef55e1e7c6f62ae43f4a3c6c185c40365f0fdc2628309b4a0e6c7ec4b3ba6

Contents?: true

Size: 1.5 KB

Versions: 7

Compression:

Stored size: 1.5 KB

Contents

# frozen_string_literal: true

require 'avm/ruby/gems/generator'
require 'eac_ruby_utils/console/docopt_runner'
require 'eac_ruby_utils/core_ext'
require 'eac_cli/default_runner'

module Avm
  module Tools
    class Runner
      class Ruby < ::EacRubyUtils::Console::DocoptRunner
        class Gems < ::EacRubyUtils::Console::DocoptRunner
          class Generate < ::EacRubyUtils::Console::DocoptRunner
            enable_console_speaker
            enable_simple_cache

            DOC = <<~DOCUMENT
              Create a gem.

              Usage:
                __PROGRAM__ [options] <path>
                __PROGRAM__ -h --help

              Options:
                -h --help                                   Show this help.
                --eac-ruby-utils-version=<version>          Version for "eac_ruby_utils" gem.
                --eac-ruby-gem-support-version=<version>    Version for "eac_ruby_gem_support" gem.
            DOCUMENT

            def run
              success "Gem \"#{generator.name}\" created in \"#{generator.root_directory}\""
            end

            private

            def generator_uncached
              ::Avm::Ruby::Gems::Generator.new(options.fetch('<path>'), generator_options)
            end

            def generator_options
              %w[eac_ruby_utils eac_ruby_gem_support].map do |gem_name|
                ["#{gem_name}_version".to_sym, options.fetch("--#{gem_name.dasherize}-version")]
              end.to_h
            end
          end
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
avm-tools-0.92.0 lib/avm/tools/runner/ruby/gems/generate.rb
avm-tools-0.91.0 lib/avm/tools/runner/ruby/gems/generate.rb
avm-tools-0.90.0 lib/avm/tools/runner/ruby/gems/generate.rb
avm-tools-0.89.0 lib/avm/tools/runner/ruby/gems/generate.rb
avm-tools-0.88.0 lib/avm/tools/runner/ruby/gems/generate.rb
avm-tools-0.87.1 lib/avm/tools/runner/ruby/gems/generate.rb
avm-tools-0.87.0 lib/avm/tools/runner/ruby/gems/generate.rb