Sha256: a89287b3916b13c2516ffa06e30bffc9071ba1d01812129ee66a80d0d5fdf670

Contents?: true

Size: 1.05 KB

Versions: 8

Compression:

Stored size: 1.05 KB

Contents

# frozen_string_literal: true

require_relative "../../interactive_system_call"

module Hanami
  module CLI
    module Commands
      module App
        # @since 2.1.0
        # @api private
        class Dev < App::Command
          # @since 2.1.0
          # @api private
          desc "Start the application in development mode"

          # @since 2.1.0
          # @api private
          def initialize(
            out:, err:,
            system_call: InteractiveSystemCall.new(out: out, err: err),
            **opts
          )
            super(out: out, err: err, **opts)

            @system_call = system_call
          end

          # @since 2.1.0
          # @api private
          def call(**)
            bin, args = executable
            system_call.call(bin, *args)
          end

          private

          # @since 2.1.0
          # @api private
          attr_reader :system_call

          # @since 2.1.0
          # @api private
          def executable
            [::File.join("bin", "dev")]
          end
        end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
hanami-cli-2.2.1 lib/hanami/cli/commands/app/dev.rb
hanami-cli-2.2.0 lib/hanami/cli/commands/app/dev.rb
hanami-cli-2.2.0.rc1 lib/hanami/cli/commands/app/dev.rb
hanami-cli-2.2.0.beta2 lib/hanami/cli/commands/app/dev.rb
hanami-cli-2.2.0.beta1 lib/hanami/cli/commands/app/dev.rb
hanami-cli-2.1.1 lib/hanami/cli/commands/app/dev.rb
hanami-cli-2.1.0 lib/hanami/cli/commands/app/dev.rb
hanami-cli-2.1.0.rc3 lib/hanami/cli/commands/app/dev.rb