Class: Fasterer::FileTraverser
- Inherits:
-
Object
- Object
- Fasterer::FileTraverser
- Defined in:
- lib/fasterer/file_traverser.rb
Constant Summary collapse
- CONFIG_FILE_NAME =
'.fasterer.yml'
Instance Attribute Summary collapse
-
#ignored_speedups ⇒ Object
readonly
Returns the value of attribute ignored_speedups.
Instance Method Summary collapse
- #config_file ⇒ Object
-
#initialize(path) ⇒ FileTraverser
constructor
A new instance of FileTraverser.
- #set_ignored_speedups ⇒ Object
- #traverse ⇒ Object
Constructor Details
#initialize(path) ⇒ FileTraverser
Returns a new instance of FileTraverser.
14 15 16 17 18 |
# File 'lib/fasterer/file_traverser.rb', line 14 def initialize(path) @path = Pathname(path) @parse_error_paths = [] set_ignored_speedups end |
Instance Attribute Details
#ignored_speedups ⇒ Object (readonly)
Returns the value of attribute ignored_speedups.
12 13 14 |
# File 'lib/fasterer/file_traverser.rb', line 12 def ignored_speedups @ignored_speedups end |
Instance Method Details
#config_file ⇒ Object
35 36 37 |
# File 'lib/fasterer/file_traverser.rb', line 35 def config_file File.exists?(CONFIG_FILE_NAME) && YAML.load_file(CONFIG_FILE_NAME) end |
#set_ignored_speedups ⇒ Object
29 30 31 32 33 |
# File 'lib/fasterer/file_traverser.rb', line 29 def set_ignored_speedups @ignored_speedups = if config_file config_file['speedups'].select {|_, value| value == false }.keys.map(&:to_sym) end || [] end |
#traverse ⇒ Object
20 21 22 23 24 25 26 27 |
# File 'lib/fasterer/file_traverser.rb', line 20 def traverse if @path.directory? traverse_directory(@path) else scan_file(@path) end output_parse_errors if parse_error_paths.any? end |