require File.expand_path("../mercenary/version", __FILE__) require "optparse" require "logger" module Mercenary autoload :Command, File.expand_path("../mercenary/command", __FILE__) autoload :Option, File.expand_path("../mercenary/option", __FILE__) autoload :Presenter, File.expand_path("../mercenary/presenter", __FILE__) autoload :Program, File.expand_path("../mercenary/program", __FILE__) # Public: Instantiate a new program and execute. # # name - the name of your program # # Returns nothing. def self.program(name) program = Program.new(name) yield program program.go(ARGV) end end