package kkmarkdown

  1. Overview
  2. Docs
A safe markdown engine

Install

Dune Dependency

Authors

Maintainers

Sources

1.1.0.tar.gz
md5=a20517d95590d03ff5b7670323b8b0dd
sha512=97b3faa09e23ab88c5b4dcabe88f29e5c675b6bb4b0c9230ec105a70b01b37b54274cc0ab4a5eed84a754a99e3664e116a7aba6c9697e3669229985f1bf749be

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

Source file SpanRuleUnicode.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
module Make (M : sig
  val re : Str.regexp
end) =
struct
  let is_safe = true
  let first_char = FirstChar.One '&'

  let construct _ ({ SpanRule.s; cur } as state) =
    if Str.string_match M.re s cur then (
      state.cur <- Str.match_end ();
      Some (Typ.UnicodeSpan (Str.matched_string s)))
    else None
end

module Hex = Make (struct
  let re =
    Str.regexp "&#x[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]?;"
end)

module Dec = Make (struct
  let re = Str.regexp "&#[0-9][0-9][0-9][0-9][0-9]?[0-9]?;"
end)
OCaml

Innovation. Community. Security.