Sha256: a5cb9a14ce8d7ff847ab36375829174d77a5bc314cab3c63734e7ee227fcd92f
Contents?: true
Size: 572 Bytes
Versions: 38
Compression:
Stored size: 572 Bytes
Contents
# frozen_string_literal: true module Tocer module Transformers # Finds appropriate header transformer for matching pattern. class Finder TRANSFORMERS = {/\[.+\]\(.+\)/ => Transformers::Link, /.*/ => Transformers::Text}.freeze def initialize transformers: TRANSFORMERS @transformers = transformers end def call markdown transformers.find do |pattern, transformer| break transformer.new markdown if pattern.match? markdown end end private attr_reader :transformers end end end
Version data entries
38 entries across 38 versions & 1 rubygems