Module: Ergane

Defined in:
lib/ergane.rb,
lib/ergane/tool.rb,
lib/ergane/errors.rb,
lib/ergane/runner.rb,
lib/ergane/command.rb,
lib/ergane/version.rb,
lib/ergane/formatter.rb,
lib/ergane/util/debug.rb,
lib/ergane/dsl/block_dsl.rb,
lib/ergane/path_registry.rb,
lib/ergane/help_formatter.rb,
lib/ergane/dsl/command_dsl.rb,
lib/ergane/util/formatting.rb,
lib/ergane/option_definition.rb,
lib/ergane/argument_definition.rb,
lib/ergane/concerns/inheritance.rb,
lib/ergane/concerns/option_handling.rb

Defined Under Namespace

Modules: Concerns, DSL, Formatter, Util Classes: AbstractCommand, ArgumentDefinition, Command, CommandNotFound, Error, HelpFormatter, InvalidOption, MissingArgument, OptionDefinition, PathRegistry, Runner, Tool

Constant Summary collapse

LOADER =
Zeitwerk::Loader.new.tap do |loader|
  loader.tag = "ergane"
  loader.inflector.inflect(
    "dsl" => "DSL",
    "command_dsl" => "CommandDSL",
    "block_dsl" => "BlockDSL"
  )
  loader.push_dir(File.expand_path("..", __FILE__))
  loader.ignore(File.expand_path("ergane/errors.rb", __dir__))
  loader.ignore(File.expand_path("ergane/core_ext", __dir__))
  loader.ignore(File.expand_path("ergane.rb", __dir__))
  loader.setup
end
VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.pathsObject

The shared registry of path-prefix abbreviations used by Command#abbreviate_path. Seeded with $HOME → “~”; consumers may register additional substitutions.



37
38
39
# File 'lib/ergane.rb', line 37

def self.paths
  @paths ||= PathRegistry.new.register("~", "~")
end

.rootObject



30
31
32
# File 'lib/ergane.rb', line 30

def self.root
  @root ||= Pathname.new(File.expand_path("../..", __FILE__))
end