class Geny::Actions::Geny

Run Geny commands from within a Geny invocation. Whoa, meta.

Public Class Methods

new(registry:) click to toggle source

Create a new Geny @param registry [Registry]

# File lib/geny/actions/geny.rb, line 7
def initialize(registry:)
  @registry = registry
end

Public Instance Methods

invoke(name, **options) click to toggle source

Run a command with options @param name [String] name of the command @param options [Hash{Symbol => Object}] options for the command

@example

geny.invoke "rails:model", name: "User"
# File lib/geny/actions/geny.rb, line 28
def invoke(name, **options)
  command = @registry.find!(name)
  command.invoke(**options)
end
run(name, *argv) click to toggle source

Run a command with arguments @param name [String] name of the command @param argv [Array<String>] command-line arguments

@example

geny.run "rails:model", "--name", "User"
# File lib/geny/actions/geny.rb, line 17
def run(name, *argv)
  command = @registry.find!(name)
  command.run(argv)
end