MCPcopy Create free account
hub / github.com/NanoMichael/MicroTeX / convertToRomanNumber

Method convertToRomanNumber

src/core/localized_num.cpp:3–49  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1#include "core/parser.h"
2
3wchar_t tex::convertToRomanNumber(wchar_t c) {
4 if (c == 0x66b) { // Arabic dot
5 return '.';
6 } else if (0x660 <= c && c <= 0x669) { // Arabic
7 return (wchar_t)(c - (wchar_t)0x630);
8 } else if (0x6f0 <= c && c <= 0x6f9) { // Arabic
9 return (wchar_t)(c - (wchar_t)0x6c0);
10 } else if (0x966 <= c && c <= 0x96f) { // Devanagari
11 return (wchar_t)(c - (wchar_t)0x936);
12 } else if (0x9e6 <= c && c <= 0x9ef) { // Bengali
13 return (wchar_t)(c - (wchar_t)0x9b6);
14 } else if (0xa66 <= c && c <= 0xa6f) { // Gurmukhi
15 return (wchar_t)(c - (wchar_t)0xa36);
16 } else if (0xae6 <= c && c <= 0xaef) { // Gujarati
17 return (wchar_t)(c - (wchar_t)0xab6);
18 } else if (0xb66 <= c && c <= 0xb6f) { // Oriya
19 return (wchar_t)(c - (wchar_t)0xb36);
20 } else if (0xc66 <= c && c <= 0xc6f) { // Telugu
21 return (wchar_t)(c - (wchar_t)0xc36);
22 } else if (0xd66 <= c && c <= 0xd6f) { // Malayalam
23 return (wchar_t)(c - (wchar_t)0xd36);
24 } else if (0xe50 <= c && c <= 0xe59) { // Thai
25 return (wchar_t)(c - (wchar_t)0xe20);
26 } else if (0xed0 <= c && c <= 0xed9) { // Lao
27 return (wchar_t)(c - (wchar_t)0xea0);
28 } else if (0xf20 <= c && c <= 0xf29) { // Tibetan
29 return (wchar_t)(c - (wchar_t)0xe90);
30 } else if (0x1040 <= c && c <= 0x1049) { // Myanmar
31 return (wchar_t)(c - (wchar_t)0x1010);
32 } else if (0x17e0 <= c && c <= 0x17e9) { // Khmer
33 return (wchar_t)(c - (wchar_t)0x17b0);
34 } else if (0x1810 <= c && c <= 0x1819) { // Mongolian
35 return (wchar_t)(c - (wchar_t)0x17e0);
36 } else if (0x1b50 <= c && c <= 0x1b59) { // Balinese
37 return (wchar_t)(c - (wchar_t)0x1b20);
38 } else if (0x1bb0 <= c && c <= 0x1bb9) { // Sundanese
39 return (wchar_t)(c - (wchar_t)0x1b80);
40 } else if (0x1c40 <= c && c <= 0x1c49) { // Lepcha
41 return (wchar_t)(c - (wchar_t)0x1c10);
42 } else if (0x1c50 <= c && c <= 0x1c59) { // Ol Chiki
43 return (wchar_t)(c - (wchar_t)0x1c20);
44 } else if (0xa8d0 <= c && c <= 0xa8d9) { // Saurashtra
45 return (wchar_t)(c - (wchar_t)0xa8a0);
46 }
47
48 return c;
49}

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected