class PreCommit::Checks::Jshint
Public Class Methods
description()
click to toggle source
# File lib/plugins/pre_commit/checks/jshint.rb, line 19 def self.description "Checks javascript files with JSHint." end
Public Instance Methods
alternate_config_file()
click to toggle source
# File lib/plugins/pre_commit/checks/jshint.rb, line 15 def alternate_config_file ".jshintrc" end
linter_src()
click to toggle source
# File lib/plugins/pre_commit/checks/jshint.rb, line 11 def linter_src File.expand_path("../../../../pre-commit/support/jshint/jshint.js", __FILE__) end
run_check(file)
click to toggle source
# File lib/plugins/pre_commit/checks/jshint.rb, line 7 def run_check(file) context.call("JSHINT._getErrors", File.read(file), js_config, js_config["globals"]) end
Private Instance Methods
context()
click to toggle source
# File lib/plugins/pre_commit/checks/jshint.rb, line 25 def context @context ||= ExecJS.compile("global = this;" << File.read(linter_src) << <<-JAVASCRIPT) ;JSHINT._getErrors = function(source, options, globals) { JSHINT(source, options, globals); return JSHINT.errors; } JAVASCRIPT end
js_config()
click to toggle source
# File lib/plugins/pre_commit/checks/jshint.rb, line 34 def js_config @js_config ||= if config_file ExecJS.exec("return (#{File.read(config_file)});") else {} end end