Sha256: 7d4d489ee8685af3e8ffd6b3cc510c6a810007e5e7ad01422c7f513aeb6f0da9
Contents?: true
Size: 1.26 KB
Versions: 1
Compression:
Stored size: 1.26 KB
Contents
require 'rbconfig' module FSSM::Support class << self def backend @@backend ||= case when mac? && !jruby? && carbon_core? 'FSEvents' when linux? && rb_inotify? 'Inotify' else 'Polling' end end def jruby? defined?(JRUBY_VERSION) end def mac? Config::CONFIG['target_os'] =~ /darwin/i end def linux? Config::CONFIG['target_os'] =~ /linux/i end def carbon_core? begin require 'osx/foundation' OSX.require_framework '/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework' true rescue LoadError STDERR.puts("Warning: Unable to load CarbonCore. FSEvents will be unavailable.") false end end def rb_inotify? found = begin require 'rb-inotify' !INotify::Notifier.ancestors.include?(IO) rescue LoadError false end STDERR.puts("Warning: Unable to load rb-inotify >= 0.3.0. Inotify will be unavailable.") unless found found end def use_block(context, block) return if block.nil? if block.arity == 1 block.call(context) else context.instance_eval(&block) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
haml-edge-2.3.150 | vendor/fssm/lib/fssm/support.rb |