class HammerCLI::Subcommand::LazyDefinition

Public Class Methods

new(names, description, subcommand_class_name, path) click to toggle source
# File lib/hammer_cli/subcommand.rb, line 8
def initialize(names, description, subcommand_class_name, path)
  @names = Array(names)
  @description = description
  @subcommand_class_name = subcommand_class_name
  @path = path
  @loaded = false
end

Public Instance Methods

loaded?() click to toggle source
# File lib/hammer_cli/subcommand.rb, line 16
def loaded?
  @loaded
end
subcommand_class() click to toggle source
# File lib/hammer_cli/subcommand.rb, line 20
def subcommand_class
  if !@loaded
    require @path
    @loaded = true
    @constantized_class = @subcommand_class_name.constantize
  end
  @constantized_class
end