class Middleman::SourceWatcher
def initialize(parent, type, directory, options={})
def initialize(parent, type, directory, options={}) @parent = parent @options = options @type = type @directory = Pathname(directory) @files = {} @extensionless_files = {} @frontmatter = options.fetch(:frontmatter, true) @binary = options.fetch(:binary, false) @validator = options.fetch(:validator, proc { true }) @ignored = options.fetch(:ignored, proc { false }) @only = Array(options.fetch(:only, [])) @disable_watcher = app.build? @force_polling = false @latency = nil @wait_for_delay = nil @listener = nil @callbacks = ::Middleman::CallbackManager.new @callbacks.install_methods!(self, [:on_change]) @waiting_for_existence = !@directory.exist? end