Sha256: f2dea484d2ffc5278dc54548dfe38823194045171073e55f10f0ef6f5381c310

Contents?: true

Size: 735 Bytes

Versions: 1

Compression:

Stored size: 735 Bytes

Contents

module Ratch

  # TODO: How best to support CLI interface?
  module CLI

    #
    def self.included(base)
      require 'facets/argvector'
    end

    #
    def self.extended(base)
      require 'facets/argvector'
    end

    #
    def initialize(*args)
      argv = ArgVector.new(ARGV)

      @arguments, parameters = *argv.parameters

      args << {} unless Hash === args.last

      opts = args.last

      opts.merge!(parameters)

      super(*args)
    end

    #
    def arguments
      @arguments
    end

    # DEPRECATE!
    #alias_method :commandline, :cli

    # DEPRECATE!
    #alias_method :command, :cli

    #
    #def commandline
    #  #@commandline ||= ArgVector.new(ARGV)
    #  @commandline
    #end
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ratch-1.2.0 lib/ratch/utils/cli.rb