unicode-data.h 630 Bytes
Newer Older
xuxzh1's avatar
init  
xuxzh1 committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#pragma once

#include <cstdint>
#include <vector>
#include <unordered_map>
#include <unordered_set>

struct range_nfd {
    uint32_t first;
    uint32_t last;
    uint32_t nfd;
};

static const uint32_t MAX_CODEPOINTS = 0x110000;

xuxzh1's avatar
update  
xuxzh1 committed
16
extern const std::initializer_list<std::pair<uint32_t, uint16_t>> unicode_ranges_flags;
xuxzh1's avatar
init  
xuxzh1 committed
17
extern const std::unordered_set<uint32_t> unicode_set_whitespace;
xuxzh1's avatar
update  
xuxzh1 committed
18
19
20
extern const std::initializer_list<std::pair<uint32_t, uint32_t>> unicode_map_lowercase;
extern const std::initializer_list<std::pair<uint32_t, uint32_t>> unicode_map_uppercase;
extern const std::initializer_list<range_nfd> unicode_ranges_nfd;