Method: MarkdownIt::Ruler#__compile__

Defined in:
lib/motion-markdown-it/ruler.rb

#__compile__Object

// Build rules lookup cache




55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# File 'lib/motion-markdown-it/ruler.rb', line 55

def __compile__
  chains = [ '' ]

  # // collect unique names
  @__rules__.each do |rule|
    next if !rule[:enabled]

    rule[:alt].each do |altName|
      if !chains.include?(altName)
        chains.push(altName)
      end
    end
  end

  @__cache__ = {}

  chains.each do |chain|
    @__cache__[chain] = []
    @__rules__.each do |rule|
      next if !rule[:enabled]
      next if (chain && !rule[:alt].include?(chain))

      @__cache__[chain].push(rule[:fn])
    end
  end
end