package kkmarkdown

  1. Overview
  2. Docs
A safe markdown engine

Install

dune-project
 Dependency

Authors

Maintainers

Sources

1.0.0.tar.gz
md5=cc8056af18a204bf68d60f50be5a9de7
sha512=452ef12429aa68606e79b82d883275abd05659fec52509dfa18d7de0edcfa0afba7fa9001d9643c5ad072a494ad8593c6f127e382b06d6c224964b3a7969f388

doc/src/kkmarkdown.lib/BlockRuleInlineHTML.ml.html

Source file BlockRuleInlineHTML.ml

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
module Make (M : sig
  val tag : string
end) =
struct
  let is_safe = false
  let first_char = FirstChar.One '<'
  let force_construct = false

  type state = unit

  let re_start = Str.regexp ("<[ \t]*" ^ M.tag ^ "[ \t>]")
  let re_end = Str.regexp ("</[ \t]*" ^ M.tag ^ "[ \t]*>[ \t]*$")

  let start line : state BlockRule.res =
    if Str.string_match re_start line 0 then
      Go { state = (); handle_line = `Keep }
    else Die

  let continue _ line : state BlockRule.res =
    if Str.string_match re_end line 0 then
      Stop { state = (); handle_line = `Keep }
    else Go { state = (); handle_line = `Keep }

  let construct _ _ lines = Typ.UnsafeInlineHtml lines
end

module Div = Make (struct
  let tag = "div"
end)

module Script = Make (struct
  let tag = "script"
end)
OCaml

Innovation. Community. Security.