class FlatKit::Command

Attributes

argv[R]
env[R]
logger[R]
opts[R]
readers[R]
writer[R]

Public Class Methods

description() click to toggle source
# File lib/flat_kit/command.rb, line 16
def self.description
  raise NotImplementedError, "#{self.class} must implement #{self.class}.description"
end
for(name) click to toggle source
# File lib/flat_kit/command.rb, line 28
def self.for(name)
  children.find do |child_klass|
    child_klass.name == name
  end
end
name() click to toggle source
# File lib/flat_kit/command.rb, line 12
def self.name
  raise NotImplementedError, "#{self.class} must implement #{self.class}.name"
end
names() click to toggle source
# File lib/flat_kit/command.rb, line 24
def self.names
  children.map { |c| c.name }
end
new(argv:, logger: ::FlatKit.logger, env: ENV) click to toggle source
# File lib/flat_kit/command.rb, line 34
def initialize(argv:, logger: ::FlatKit.logger, env: ENV)
  @argv = argv
  @env = env
  @logger = logger
  parse
end
parser() click to toggle source
# File lib/flat_kit/command.rb, line 20
def self.parser
  raise NotImplementedError, "#{self.class} must implement #{self.class}.parser"
end

Public Instance Methods

call() click to toggle source
# File lib/flat_kit/command.rb, line 45
def call
  raise NotImplementedError, "#{self.class} must implement #{self.class}.description"
end
parse() click to toggle source
# File lib/flat_kit/command.rb, line 41
def parse
  raise NotImplementedError, "#{self.class} must implement #{self.class}#parse"
end