class Listen::Silencer
Constants
- DEFAULT_IGNORED_DIRECTORIES
The default list of directories that get ignored.
- DEFAULT_IGNORED_EXTENSIONS
The default list of files that get ignored.
Attributes
ignore_patterns[RW]
TODO: deprecate these mutators; use attr_reader instead
only_patterns[RW]
TODO: deprecate these mutators; use attr_reader instead
Public Class Methods
new(**options)
click to toggle source
# File lib/listen/silencer.rb, line 63 def initialize(**options) configure(options) end
Public Instance Methods
configure(options)
click to toggle source
TODO: deprecate this mutator
# File lib/listen/silencer.rb, line 68 def configure(options) @only_patterns = options[:only] ? Array(options[:only]) : nil @ignore_patterns = _init_ignores(options[:ignore], options[:ignore!]) end
silenced?(relative_path, type)
click to toggle source
# File lib/listen/silencer.rb, line 73 def silenced?(relative_path, type) path = relative_path.to_s # in case it is a Pathname _ignore?(path) || (only_patterns && type == :file && !_only?(path)) end
Private Instance Methods
_ignore?(path)
click to toggle source
# File lib/listen/silencer.rb, line 81 def _ignore?(path) ignore_patterns.any? { |pattern| path =~ pattern } end
_init_ignores(ignores, overrides)
click to toggle source
# File lib/listen/silencer.rb, line 89 def _init_ignores(ignores, overrides) patterns = [] unless overrides patterns << DEFAULT_IGNORED_DIRECTORIES patterns << DEFAULT_IGNORED_EXTENSIONS end patterns << ignores patterns << overrides patterns.compact.flatten end
_only?(path)
click to toggle source
# File lib/listen/silencer.rb, line 85 def _only?(path) only_patterns.any? { |pattern| path =~ pattern } end