Module: ParseAChangelog

Defined in:
lib/parse_a_changelog.rb

Defined Under Namespace

Classes: ParseError

Class Method Summary collapse

Class Method Details

.parse(file_path) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/parse_a_changelog.rb', line 8

def parse(file_path)
  file = File.read(file_path)
  parser = KeepAChangelogParser.new
  result = parser.parse(file)

  unless result
    raise parser_error(
            parser.failure_line, parser.failure_column, parser.failure_reason
          )
  end
  
  result
end

.parser_error(line, column, reason) ⇒ Object



22
23
24
# File 'lib/parse_a_changelog.rb', line 22

def parser_error(line, column, reason)
  ParseError.new("line #{line}, column #{column}: #{reason}")
end