summaryrefslogtreecommitdiff
path: root/src/clarktown/parsers.clj
blob: cd909b3ed75737f6156ac298cd9bb81d110a0f59 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
(ns clarktown.parsers
  (:require
    [clarktown.parsers.bold :as bold]
    [clarktown.parsers.italic :as italic]
    [clarktown.parsers.inline-code :as inline-code]
    [clarktown.parsers.strikethrough :as strikethrough]
    [clarktown.parsers.link-and-image :as link-and-image]
    [clarktown.parsers.empty-block :as empty-block]
    [clarktown.parsers.horizontal-line-block :as horizontal-line-block]
    [clarktown.parsers.quote-block :as quote-block]
    [clarktown.parsers.heading-block :as heading-block]
    [clarktown.parsers.code-block :as code-block]
    [clarktown.parsers.list-block :as list-block]
    [clarktown.parsers.paragraph-block :as paragraph-block]))


(def parsers
  [{:matcher empty-block/is?
    :renderers [empty-block/render]}
   {:matcher horizontal-line-block/is?
    :renderers [horizontal-line-block/render]}
   {:matcher heading-block/is?
    :renderers [link-and-image/render
                bold/render
                italic/render
                inline-code/render
                strikethrough/render
                heading-block/render]}
   {:matcher quote-block/is?
    :renderers [quote-block/render]}
   {:matcher code-block/is?
    :renderers [code-block/render]}
   {:matcher list-block/is?
    :renderers [link-and-image/render
                bold/render
                italic/render
                inline-code/render
                strikethrough/render
                list-block/render]}
   {:renderers [link-and-image/render
                bold/render
                italic/render
                inline-code/render
                strikethrough/render
                paragraph-block/render]}])