Class: MarkdownLint::RuleSet

Inherits:
Object
  • Object
show all
Defined in:
lib/mdl/ruleset.rb

Overview

defines a ruleset

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeRuleSet

Returns a new instance of RuleSet.



57
58
59
# File 'lib/mdl/ruleset.rb', line 57

def initialize
  @rules = {}
end

Instance Attribute Details

#rulesObject (readonly)

Returns the value of attribute rules.



55
56
57
# File 'lib/mdl/ruleset.rb', line 55

def rules
  @rules
end

Instance Method Details

#docs(url = nil, &block) ⇒ Object



71
72
73
74
75
76
77
# File 'lib/mdl/ruleset.rb', line 71

def docs(url = nil, &block)
  if block_given? != url.nil?
    raise ArgumentError, 'Give either a URL or a block, not both'
  end

  @fallback_docs = block_given? ? block : lambda { |_, _| url }
end

#load(rules_file) ⇒ Object



66
67
68
69
# File 'lib/mdl/ruleset.rb', line 66

def load(rules_file)
  instance_eval(File.read(rules_file), rules_file)
  @rules
end

#load_defaultObject



79
80
81
# File 'lib/mdl/ruleset.rb', line 79

def load_default
  load(File.expand_path('rules.rb', __dir__))
end

#rule(id, description, &block) ⇒ Object



61
62
63
64
# File 'lib/mdl/ruleset.rb', line 61

def rule(id, description, &block)
  @rules[id] =
    Rule.new(id, description, :fallback_docs => @fallback_docs, &block)
end