Module: Sevgi::Binaries::Sevgi

Extended by:
Sevgi
Included in:
Sevgi
Defined in:
lib/sevgi/binaries/sevgi.rb

Constant Summary collapse

PROGNAME =
"sevgi"
Error =
Class.new(::Sevgi::Error)

Instance Method Summary collapse

Instance Method Details

#call(argv) ⇒ Object



46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/sevgi/binaries/sevgi.rb', line 46

def call(argv)
  return puts(help) if (options = Options.parse(argv = Array(argv))).help
  return puts(::Sevgi::VERSION) if options.version

  result = run(file = argv.shift, options)

  if result.error?
    raise result.error if options.vomit || ENV[ENVVOMIT]

    die(result.error, file)
  end

rescue Binaries::Sevgi::Error => e
  abort(e.message)
end