Class: HamlLint::Options

Inherits:
Object
  • Object
show all
Defined in:
lib/haml_lint/options.rb

Overview

Handles option parsing for the command line application.

Instance Method Summary collapse

Instance Method Details

#parse(args) ⇒ Hash

Parses command line options into an options hash.


10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/haml_lint/options.rb', line 10

def parse(args)
  @options = {}

  OptionParser.new do |parser|
    parser.banner = "Usage: #{APP_NAME} [options] [file1, file2, ...]"

    add_linter_options parser
    add_file_options parser
    add_info_options parser
  end.parse!(args)

  # Any remaining arguments are assumed to be files
  @options[:files] = args

  @options
rescue OptionParser::InvalidOption => ex
  raise Exceptions::InvalidCLIOption,
        ex.message,
        ex.backtrace
end