@@ -77,8 +77,13 @@ def main(input_file, output_file):
77
77
demiplane_to_idx = OrderedDict () # demiplane_idx → data_idx
78
78
data_to_idx = [None ] * 18 * 0x100 # demiplane data → data_idx
79
79
print (" // A 'demiplane' is a 1/256th of a Unicode plane." , file = output_file )
80
- print (" // This way a 'demiplane' fits nicely into a cache line." , file = output_file )
81
- print (" alignas(64) static const std::uint8_t demiplane_data[][0x100 / 4] = {" , file = output_file )
80
+ print (
81
+ " // This way a 'demiplane' fits nicely into a cache line." , file = output_file
82
+ )
83
+ print (
84
+ " alignas(64) static const std::uint8_t demiplane_data[][0x100 / 4] = {" ,
85
+ file = output_file ,
86
+ )
82
87
for i in range (18 * 0x100 ):
83
88
plane_data = ""
84
89
plane = planes [i ]
@@ -95,7 +100,10 @@ def main(input_file, output_file):
95
100
produced_idx = demiplane_to_idx .get (plane_data )
96
101
if produced_idx is None :
97
102
produced_idx = len (demiplane_to_idx )
98
- print (" {{ // {} -> 0x{:02x}u" .format (i , produced_idx ), file = output_file )
103
+ print (
104
+ " {{ // {} -> 0x{:02x}u" .format (i , produced_idx ),
105
+ file = output_file ,
106
+ )
99
107
print (plane_data , file = output_file , end = "" )
100
108
print (" }," , file = output_file )
101
109
demiplane_to_idx [plane_data ] = produced_idx
@@ -106,7 +114,10 @@ def main(input_file, output_file):
106
114
107
115
snd_lookup_lines = OrderedDict ()
108
116
snd_lookup_indices = OrderedDict ()
109
- print (" alignas(64) static const std::uint8_t demiplane_snd_data[][64] = {" , file = output_file )
117
+ print (
118
+ " alignas(64) static const std::uint8_t demiplane_snd_data[][64] = {" ,
119
+ file = output_file ,
120
+ )
110
121
for start in range (0 , 18 * 0x100 , 64 ):
111
122
snd_lookup_line : str
112
123
for i in range (start , min (start + 64 , 18 * 0x100 )):
@@ -116,19 +127,28 @@ def main(input_file, output_file):
116
127
else :
117
128
snd_lookup_line += "\n "
118
129
snd_lookup_line += " 0x{:02x}u," .format (data_to_idx [i ])
119
-
130
+
120
131
snd_lookup_idx = snd_lookup_lines .get (snd_lookup_line , None )
121
132
if snd_lookup_idx is None :
122
133
snd_lookup_idx = len (snd_lookup_lines )
123
- print (" {{ // {} -> 0x{:02x}u" .format (start // 64 , snd_lookup_idx ), file = output_file )
134
+ print (
135
+ " {{ // {} -> 0x{:02x}u" .format (start // 64 , snd_lookup_idx ),
136
+ file = output_file ,
137
+ )
124
138
print (snd_lookup_line , file = output_file )
125
139
print (" }," , file = output_file )
126
140
snd_lookup_lines [snd_lookup_line ] = snd_lookup_idx
127
141
snd_lookup_indices [start // 64 ] = snd_lookup_idx
128
142
print (" };" , file = output_file )
129
143
print (file = output_file )
130
144
131
- print (" alignas(64) static const std::uint8_t demiplane_snd[18 * 0x100 / 64] = {{" .format (68 ), end = "" , file = output_file )
145
+ print (
146
+ " alignas(64) static const std::uint8_t demiplane_snd[18 * 0x100 / 64] = {{" .format (
147
+ 68
148
+ ),
149
+ end = "" ,
150
+ file = output_file ,
151
+ )
132
152
for i in range (18 * 0x100 // 64 ):
133
153
if i % 16 == 0 :
134
154
print ("\n " , end = "" , file = output_file )
@@ -138,7 +158,10 @@ def main(input_file, output_file):
138
158
print (file = output_file )
139
159
140
160
print (" if (JSON5EncoderCpp_expect(codepoint < 256, true)) {" , file = output_file )
141
- print (" return (demiplane_data[0][codepoint / 4] >> (2 * (codepoint % 4))) % 4;" , file = output_file )
161
+ print (
162
+ " return (demiplane_data[0][codepoint / 4] >> (2 * (codepoint % 4))) % 4;" ,
163
+ file = output_file ,
164
+ )
142
165
print (" }" , file = output_file )
143
166
print (file = output_file )
144
167
print (" if (codepoint > 0x110000) codepoint = 0x110000;" , file = output_file )
@@ -147,8 +170,13 @@ def main(input_file, output_file):
147
170
print (" std::uint32_t snd_row = fst_row / 64;" , file = output_file )
148
171
print (" std::uint32_t snd_col = fst_row % 64;" , file = output_file )
149
172
print (file = output_file )
150
- print (" const std::uint8_t *cell = demiplane_data[demiplane_snd_data[demiplane_snd[snd_row]][snd_col]];" , file = output_file )
151
- print (" return (cell[fst_col / 4] >> (2 * (fst_col % 4))) % 4;" , file = output_file )
173
+ print (
174
+ " const std::uint8_t *cell = demiplane_data[demiplane_snd_data[demiplane_snd[snd_row]][snd_col]];" ,
175
+ file = output_file ,
176
+ )
177
+ print (
178
+ " return (cell[fst_col / 4] >> (2 * (fst_col % 4))) % 4;" , file = output_file
179
+ )
152
180
print ("}" , file = output_file )
153
181
print (file = output_file )
154
182
print ("}" , file = output_file )
0 commit comments