Module: LintTrap::Language

Defined in:
lib/lint_trap/language.rb,
lib/lint_trap/language/go.rb,
lib/lint_trap/language/cpp.rb,
lib/lint_trap/language/css.rb,
lib/lint_trap/language/base.rb,
lib/lint_trap/language/java.rb,
lib/lint_trap/language/json.rb,
lib/lint_trap/language/ruby.rb,
lib/lint_trap/language/scss.rb,
lib/lint_trap/language/python.rb,
lib/lint_trap/language/unknown.rb,
lib/lint_trap/language/javascript.rb,
lib/lint_trap/language/coffeescript.rb

Overview

Language lookup

Defined Under Namespace

Classes: Base, CPP, CSS, CoffeeScript, Go, JSON, Java, JavaScript, Python, Ruby, SCSS, Unknown

Class Method Summary collapse

Class Method Details

.detect(file) ⇒ Object



26
27
28
29
30
31
32
# File 'lib/lint_trap/language.rb', line 26

def detect(file)
  if (language = Linguist::FileBlob.new(file).language)
    find(language.name)
  else
    Unknown.new
  end
end

.find(name) ⇒ Object



34
35
36
# File 'lib/lint_trap/language.rb', line 34

def find(name)
  languages[name] || Unknown.new(name)
end

.register(language_class) ⇒ Object



21
22
23
24
# File 'lib/lint_trap/language.rb', line 21

def register(language_class)
  language = language_class.new
  languages[language.name] = language
end