@@ -21,7 +21,7 @@ namespace nisaba {
21
21
namespace utf8 {
22
22
namespace {
23
23
24
- const absl::flat_hash_set< char32_t > kBreakingWhitespace = {
24
+ constexpr char32_t kBreakingWhitespace [] = {
25
25
U' \u0009 ' , // character tabulation
26
26
U' \u000A ' , // line feed
27
27
U' \u000B ' , // line tabulation
@@ -49,7 +49,7 @@ const absl::flat_hash_set<char32_t> kBreakingWhitespace = {
49
49
U' \u3000 ' , // ideographic space
50
50
};
51
51
52
- const absl::flat_hash_set< char32_t > kNonBreakingWhitespace = {
52
+ constexpr char32_t kNonBreakingWhitespace [] = {
53
53
U' \u180E ' , // mongolian vowel separator
54
54
U' \u200B ' , // zero width space
55
55
U' \u200C ' , // zero width non-joiner
@@ -61,17 +61,20 @@ const absl::flat_hash_set<char32_t> kNonBreakingWhitespace = {
61
61
} // namespace
62
62
63
63
absl::flat_hash_set<char32_t > GetBreakingWhitespaceChars () {
64
- return kBreakingWhitespace ;
64
+ return absl::flat_hash_set<char32_t >(std::begin (kBreakingWhitespace ),
65
+ std::end (kBreakingWhitespace ));
65
66
}
66
67
67
68
absl::flat_hash_set<char32_t > GetNonBreakingWhitespaceChars () {
68
- return kNonBreakingWhitespace ;
69
+ return absl::flat_hash_set<char32_t >(std::begin (kNonBreakingWhitespace ),
70
+ std::end (kNonBreakingWhitespace ));
69
71
}
70
72
71
73
absl::flat_hash_set<char32_t > GetAllWhitespaceChars () {
72
74
absl::flat_hash_set<char32_t > all_chars;
73
- std::set_union (kBreakingWhitespace .begin (), kBreakingWhitespace .end (),
74
- kNonBreakingWhitespace .begin (), kNonBreakingWhitespace .end (),
75
+ std::set_union (std::begin (kBreakingWhitespace ), std::end (kBreakingWhitespace ),
76
+ std::begin (kNonBreakingWhitespace ),
77
+ std::end (kNonBreakingWhitespace ),
75
78
std::inserter (all_chars, all_chars.begin ()));
76
79
return all_chars;
77
80
}
0 commit comments