Class: Licensee::ProjectFiles::PackageManagerFile

Inherits:
ProjectFile
  • Object
show all
Defined in:
lib/licensee/project_files/package_manager_file.rb

Constant Summary collapse

MATCHERS_EXTENSIONS =

Hash of Extension => [possible matchers]

{
  '.gemspec' => [Matchers::Gemspec],
  '.json'    => [Matchers::NpmBower],
  '.cabal'   => [Matchers::Cabal]
}.freeze
FILENAMES_EXTENSIONS =

Hash of Filename => [possible matchers]

{
  'DESCRIPTION'  => [Matchers::Cran],
  'dist.ini'     => [Matchers::DistZilla],
  'LICENSE.spdx' => [Matchers::Spdx]
}.freeze
FILENAMES_SCORES =
{
  'package.json' => 1.0,
  'LICENSE.spdx' => 1.0,
  'DESCRIPTION'  => 0.9,
  'dist.ini'     => 0.8,
  'bower.json'   => 0.75
}.freeze

Constants inherited from ProjectFile

Licensee::ProjectFiles::ProjectFile::ENCODING, Licensee::ProjectFiles::ProjectFile::ENCODING_OPTIONS

Instance Attribute Summary

Attributes inherited from ProjectFile

#content

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from ProjectFile

#confidence, #copyright?, #filename, #initialize, #license, #matcher

Constructor Details

This class inherits a constructor from Licensee::ProjectFiles::ProjectFile

Class Method Details

.name_score(filename) ⇒ Object



30
31
32
33
# File 'lib/licensee/project_files/package_manager_file.rb', line 30

def self.name_score(filename)
  return 1.0 if ['.gemspec', '.cabal'].include?(File.extname(filename))
  FILENAMES_SCORES[filename] || 0.0
end

Instance Method Details

#possible_matchersObject



26
27
28
# File 'lib/licensee/project_files/package_manager_file.rb', line 26

def possible_matchers
  MATCHERS_EXTENSIONS[extension] || FILENAMES_EXTENSIONS[filename] || []
end