math_text_transform/variants/
fraktur.rs

1/// Transform a character to it's mathematical fraktur equivalent.
2pub fn math_fraktur(c: char) -> Option<char> {
3    match c {
4        // Latin capital letters.
5        'A' => Some('𝔄'),
6        'B' => Some('𝔅'),
7        'C' => Some('ℭ'),
8        'D' => Some('𝔇'),
9        'E' => Some('𝔈'),
10        'F' => Some('𝔉'),
11        'G' => Some('𝔊'),
12        'H' => Some('ℌ'),
13        'I' => Some('ℑ'),
14        'J' => Some('𝔍'),
15        'K' => Some('𝔎'),
16        'L' => Some('𝔏'),
17        'M' => Some('𝔐'),
18        'N' => Some('𝔑'),
19        'O' => Some('𝔒'),
20        'P' => Some('𝔓'),
21        'Q' => Some('𝔔'),
22        'R' => Some('ℜ'),
23        'S' => Some('𝔖'),
24        'T' => Some('𝔗'),
25        'U' => Some('𝔘'),
26        'V' => Some('𝔙'),
27        'W' => Some('𝔚'),
28        'X' => Some('𝔛'),
29        'Y' => Some('𝔜'),
30        'Z' => Some('ℨ'),
31
32        // Latin small letters.
33        'a' => Some('𝔞'),
34        'b' => Some('𝔟'),
35        'c' => Some('𝔠'),
36        'd' => Some('𝔡'),
37        'e' => Some('𝔢'),
38        'f' => Some('𝔣'),
39        'g' => Some('𝔤'),
40        'h' => Some('𝔥'),
41        'i' => Some('𝔦'),
42        'j' => Some('𝔧'),
43        'k' => Some('𝔨'),
44        'l' => Some('𝔩'),
45        'm' => Some('𝔪'),
46        'n' => Some('𝔫'),
47        'o' => Some('𝔬'),
48        'p' => Some('𝔭'),
49        'q' => Some('𝔮'),
50        'r' => Some('𝔯'),
51        's' => Some('𝔰'),
52        't' => Some('𝔱'),
53        'u' => Some('𝔲'),
54        'v' => Some('𝔳'),
55        'w' => Some('𝔴'),
56        'x' => Some('𝔵'),
57        'y' => Some('𝔶'),
58        'z' => Some('𝔷'),
59
60        // No equivalence.
61        _ => None,
62    }
63}