Class: Hanami::CLI
- Inherits:
-
Object
- Object
- Hanami::CLI
- Defined in:
- gems/gems/hanami-1.3.3/lib/hanami/cli/commands.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/db.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/new.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/assets.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/routes.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/server.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/command.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/console.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/db/drop.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/destroy.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/project.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/version.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/db/apply.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/generate.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/db/create.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/templates.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/db/console.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/db/migrate.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/db/prepare.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/db/version.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/db/rollback.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/destroy/app.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/generate/app.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/destroy/model.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/destroy/action.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/destroy/mailer.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/generate/model.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/generate/action.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/generate/mailer.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/generate/secret.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/assets/precompile.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/destroy/migration.rb,
gems/gems/hanami-1.3.3/lib/hanami/cli/commands/generate/migration.rb,
gems/gems/hanami-cli-0.3.1/lib/hanami/cli/usage.rb,
gems/gems/hanami-cli-0.3.1/lib/hanami/cli/banner.rb,
gems/gems/hanami-cli-0.3.1/lib/hanami/cli/errors.rb,
gems/gems/hanami-cli-0.3.1/lib/hanami/cli/option.rb,
gems/gems/hanami-cli-0.3.1/lib/hanami/cli/parser.rb,
gems/gems/hanami-cli-0.3.1/lib/hanami/cli/command.rb,
gems/gems/hanami-cli-0.3.1/lib/hanami/cli/version.rb,
gems/gems/hanami-cli-0.3.1/lib/hanami/cli/registry.rb,
gems/gems/hanami-cli-0.3.1/lib/hanami/cli/program_name.rb,
gems/gems/hanami-cli-0.3.1/lib/hanami/cli/command_registry.rb,
gems/gems/hanami-cli-0.3.1/lib/hanami/cli.rb
Overview
General purpose Command Line Interface (CLI) framework for Ruby
Defined Under Namespace
Modules: Registry Classes: Command, Error, InvalidCallbackError, UnknownCommandError
Constant Summary collapse
- VERSION =
"0.3.1".freeze
Class Method Summary collapse
- .const_missing(name) ⇒ Object
-
.register(name, command = nil, aliases: [], &blk) ⇒ Object
Register a command to expand Hanami CLI.
Instance Method Summary collapse
-
#call(arguments: ARGV, out: $stdout) ⇒ Object
Invoke the CLI.
-
#initialize(registry) ⇒ Hanami::CLI
constructor
Create a new instance.
Constructor Details
#initialize(registry) ⇒ Hanami::CLI
Create a new instance
Source: | on GitHub
def initialize(registry) @commands = registry end |
Class Method Details
.const_missing(name) ⇒ Object
Source: | on GitHub
def self.const_missing(name) super unless name == :UnkwnownCommandError Hanami::Utils::Deprecation.new('UnkwnownCommandError is deprecated, please use UnknownCommandError') UnknownCommandError end |
Instance Method Details
#call(arguments: ARGV, out: $stdout) ⇒ Object
Invoke the CLI
Source: | on GitHub
def call(arguments: ARGV, out: $stdout) result = commands.get(arguments) if result.found? command, args = parse(result, out) result.before_callbacks.run(command, args) command.call(args) result.after_callbacks.run(command, args) else usage(result, out) end end |