Module: Ing

Extended by:
Ing
Included in:
Ing
Defined in:
lib/ing.rb,
lib/ing/task.rb,
lib/ing/util.rb,
lib/ing/files.rb,
lib/ing/shell.rb,
lib/ing/command.rb,
lib/ing/version.rb,
lib/ing/generator.rb,
lib/ing/commands/boot.rb,
lib/ing/commands/help.rb,
lib/ing/commands/list.rb,
lib/ing/common_options.rb,
lib/ing/actions/directory.rb,
lib/ing/commands/generate.rb,
lib/ing/commands/implicit.rb,
lib/ing/actions/create_file.rb,
lib/ing/actions/create_link.rb,
lib/ing/option_parsers/trollop.rb,
lib/ing/actions/empty_directory.rb,
lib/ing/actions/inject_into_file.rb,
lib/ing/actions/file_manipulation.rb

Defined Under Namespace

Modules: Boot, Commands, CommonOptions, Files, OptionParsers, Shell, Util Classes: Command, Generator, Option, Task

Constant Summary collapse

Error =
Class.new(StandardError)
FileNotFoundError =
Class.new(Error)
VERSION =
'0.2.1'

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#shell_classObject



29
30
31
# File 'lib/ing.rb', line 29

def shell_class
  @shell_class ||= Shell::Basic
end

Instance Method Details

#callstackObject



78
79
80
# File 'lib/ing.rb', line 78

def callstack
  _callstack.to_a
end

#execute(klass, meth = :call, *args, &config) ⇒ Object



64
65
66
67
68
# File 'lib/ing.rb', line 64

def execute(klass, meth=:call, *args, &config)
  cmd = command.new(klass, meth, *args)
  _callstack.push(cmd.command_class, cmd.command_meth)
  cmd.execute(&config)
end

#executed?(klass, meth) ⇒ Boolean

Returns:

  • (Boolean)


74
75
76
# File 'lib/ing.rb', line 74

def executed?(klass, meth)
  !!_callstack.index(klass, meth)
end

#invoke(klass, meth = :call, *args, &config) ⇒ Object



70
71
72
# File 'lib/ing.rb', line 70

def invoke(klass, meth=:call, *args, &config)
  execute(klass, meth, *args, &config) unless executed?(klass, meth)
end

#run(args = ARGV) ⇒ Object



59
60
61
62
# File 'lib/ing.rb', line 59

def run(args=ARGV)
  booter = extract_boot_class!(args) || implicit_booter
  execute booter, *args
end