class Spellr::Config
Attributes
checker[W]
config_file[R]
dry_run[RW]
dry_run?[RW]
reporter[W]
suppress_file_rules[RW]
Public Class Methods
new()
click to toggle source
# File lib/spellr/config.rb, line 20 def initialize @config = ConfigLoader.new end
Public Instance Methods
checker()
click to toggle source
# File lib/spellr/config.rb, line 71 def checker return dry_run_checker if dry_run? @checker ||= default_checker end
config_file=(value)
click to toggle source
# File lib/spellr/config.rb, line 58 def config_file=(value) reset! @config = ConfigLoader.new(value) end
excludes()
click to toggle source
# File lib/spellr/config.rb, line 40 def excludes @excludes ||= @config[:excludes] || [] end
includes()
click to toggle source
# File lib/spellr/config.rb, line 36 def includes @includes ||= @config[:includes] || [] end
key_heuristic_weight()
click to toggle source
# File lib/spellr/config.rb, line 28 def key_heuristic_weight @key_heuristic_weight ||= @config[:key_heuristic_weight] end
key_minimum_length()
click to toggle source
# File lib/spellr/config.rb, line 32 def key_minimum_length @key_minimum_length ||= @config[:key_minimum_length] end
languages()
click to toggle source
# File lib/spellr/config.rb, line 44 def languages @languages ||= @config[:languages].map do |key, args| Spellr::Language.new(key, **args) end end
languages_for(file)
click to toggle source
# File lib/spellr/config.rb, line 50 def languages_for(file) languages.select { |l| l.matches?(file) } end
output()
click to toggle source
# File lib/spellr/config.rb, line 63 def output @output ||= Spellr::Output.new end
reporter()
click to toggle source
# File lib/spellr/config.rb, line 67 def reporter @reporter ||= default_reporter end
reset!()
click to toggle source
# File lib/spellr/config.rb, line 81 def reset! # rubocop:disable Metrics/MethodLength @config = ConfigLoader.new remove_instance_variable(:@languages) if defined?(@languages) remove_instance_variable(:@excludes) if defined?(@excludes) remove_instance_variable(:@includes) if defined?(@includes) remove_instance_variable(:@word_minimum_length) if defined?(@word_minimum_length) remove_instance_variable(:@key_heuristic_weight) if defined?(@key_heuristic_weight) remove_instance_variable(:@key_minimum_length) if defined?(@key_minimum_length) end
valid?()
click to toggle source
# File lib/spellr/config.rb, line 77 def valid? Spellr::ConfigValidator.new.valid? end
word_minimum_length()
click to toggle source
# File lib/spellr/config.rb, line 24 def word_minimum_length @word_minimum_length ||= @config[:word_minimum_length] end
wordlists_for(file)
click to toggle source
# File lib/spellr/config.rb, line 54 def wordlists_for(file) languages_for(file).flat_map(&:wordlists) end
Private Instance Methods
default_checker()
click to toggle source
# File lib/spellr/config.rb, line 103 def default_checker require_relative 'check_parallel' Spellr::CheckParallel end
default_reporter()
click to toggle source
# File lib/spellr/config.rb, line 98 def default_reporter require_relative 'reporter' Spellr::Reporter.new end
dry_run_checker()
click to toggle source
# File lib/spellr/config.rb, line 93 def dry_run_checker require_relative 'check_dry_run' Spellr::CheckDryRun end