Class: Listen::Silencer
- Inherits:
-
Object
- Object
- Listen::Silencer
- Includes:
- Celluloid
- Defined in:
- lib/listen/silencer.rb
Constant Summary collapse
- DEFAULT_IGNORED_DIRECTORIES =
The default list of directories that get ignored.
%w[.bundle .git .hg .rbx .svn bundle log tmp vendor/ruby]
- DEFAULT_IGNORED_EXTENSIONS =
The default list of files that get ignored.
%w[.DS_Store]
Instance Attribute Summary collapse
-
#options ⇒ Object
Returns the value of attribute options.
-
#patterns ⇒ Object
Returns the value of attribute patterns.
Instance Method Summary collapse
- #_default_ignored_directories_patterns ⇒ Object private
- #_default_ignored_extensions_patterns ⇒ Object private
- #_default_patterns ⇒ Object private
- #_init_patterns ⇒ Object private
-
#initialize(options = {}) ⇒ Silencer
constructor
A new instance of Silencer.
- #silenced?(path) ⇒ Boolean
Constructor Details
#initialize(options = {}) ⇒ Silencer
Returns a new instance of Silencer.
13 14 15 16 |
# File 'lib/listen/silencer.rb', line 13 def initialize( = {}) @options = _init_patterns end |
Instance Attribute Details
#options ⇒ Object
Returns the value of attribute options.
11 12 13 |
# File 'lib/listen/silencer.rb', line 11 def @options end |
#patterns ⇒ Object
Returns the value of attribute patterns.
11 12 13 |
# File 'lib/listen/silencer.rb', line 11 def patterns @patterns end |
Instance Method Details
#_default_ignored_directories_patterns ⇒ Object (private)
36 37 38 39 |
# File 'lib/listen/silencer.rb', line 36 def _default_ignored_directories_patterns ignored_directories = DEFAULT_IGNORED_DIRECTORIES.map { |d| Regexp.escape(d) } %r{(?:#{ignored_directories.join('|')})} end |
#_default_ignored_extensions_patterns ⇒ Object (private)
41 42 43 44 |
# File 'lib/listen/silencer.rb', line 41 def _default_ignored_extensions_patterns ignored_extensions = DEFAULT_IGNORED_EXTENSIONS.map { |e| Regexp.escape(e) } %r{(?:#{ignored_extensions.join('|')})$} end |
#_default_patterns ⇒ Object (private)
32 33 34 |
# File 'lib/listen/silencer.rb', line 32 def _default_patterns [_default_ignored_directories_patterns, _default_ignored_extensions_patterns] end |
#_init_patterns ⇒ Object (private)
24 25 26 27 28 29 30 |
# File 'lib/listen/silencer.rb', line 24 def _init_patterns @patterns = [] @patterns << _default_patterns unless [:ignore!] @patterns << [:ignore] << [:ignore!] @patterns.compact! @patterns.flatten! end |
#silenced?(path) ⇒ Boolean
18 19 20 |
# File 'lib/listen/silencer.rb', line 18 def silenced?(path) patterns.any? { |pattern| path.to_s =~ pattern } end |