class SCSSLint::Plugins::LinterDir

Load ruby files from linter plugin directories.

Attributes

config[R]

Public Class Methods

new(dir) click to toggle source
# File lib/scss_lint/plugins/linter_dir.rb, line 7
def initialize(dir)
  @dir = dir
end

Public Instance Methods

load() click to toggle source
# File lib/scss_lint/plugins/linter_dir.rb, line 11
def load
  ruby_files.each { |file| require file }
  @config = plugin_config
  self
end

Private Instance Methods

plugin_config() click to toggle source

Returns the {SCSSLint::Config} for this directory.

This is intended to be merged with the configuration that loaded this plugin.

@return [SCSSLint::Config]

# File lib/scss_lint/plugins/linter_dir.rb, line 29
def plugin_config
  file = plugin_config_file

  if File.exist?(file)
    Config.load(file, merge_with_default: false)
  else
    Config.new({})
  end
end
plugin_config_file() click to toggle source

Path of the configuration file to attempt to load for this directory.

@return [String]

# File lib/scss_lint/plugins/linter_dir.rb, line 42
def plugin_config_file
  File.join(@dir, Config::FILE_NAME)
end
ruby_files() click to toggle source
# File lib/scss_lint/plugins/linter_dir.rb, line 19
def ruby_files
  Dir.glob(File.expand_path(File.join(@dir, '**', '*.rb')))
end