Class: GitHubChangelogGenerator::ParserFile

Inherits:
Object
  • Object
show all
Defined in:
lib/github_changelog_generator/parser_file.rb

Overview

ParserFile is a configuration file reader which sets options in the given Hash.

In your project’s root, you can put a file named .github_changelog_generator to override defaults.

Example:

header_label=# My Super Changelog
; Comments are allowed
future-release=5.0.0
# Ruby-style comments, too
since-tag=1.0.0

The configuration format is some-key=value or some_key=value.

Instance Method Summary collapse

Constructor Details

#initialize(options, file = open_settings_file) ⇒ ParserFile

Returns a new instance of ParserFile.

Parameters:

  • options (Hash)

    options to be configured from file contents

  • file (nil, IO) (defaults to: open_settings_file)

    configuration file handle, defaults to opening ‘.github_changelog_generator`



26
27
28
29
# File 'lib/github_changelog_generator/parser_file.rb', line 26

def initialize(options, file = open_settings_file)
  @options = options
  @file = file
end

Instance Method Details

#parse!Object

Sets options using configuration file content



32
33
34
35
36
37
# File 'lib/github_changelog_generator/parser_file.rb', line 32

def parse!
  return unless @file

  @file.each_with_index { |line, i| parse_line!(line, i + 1) }
  @file.close
end