@@ -32,13 +32,13 @@ use std::{
32
32
33
33
/// A constant string that can be converted to a [`FrozenValue`].
34
34
#[ repr( C ) ] // Must match this layout on the heap
35
- pub struct ConstFrozenStringN < const N : usize > {
35
+ pub struct StarlarkStrN < const N : usize > {
36
36
repr : AValueRepr < StarlarkStr > ,
37
37
payload : [ u8 ; N ] ,
38
38
}
39
39
40
- impl < const N : usize > ConstFrozenStringN < N > {
41
- /// Create a new [`ConstFrozenStringN `] given a string of size `N`.
40
+ impl < const N : usize > StarlarkStrN < N > {
41
+ /// Create a new [`StarlarkStrN `] given a string of size `N`.
42
42
/// If the string has a different size it will fail.
43
43
pub const fn new ( s : & str ) -> Self {
44
44
assert ! ( N == s. len( ) ) ;
@@ -55,7 +55,7 @@ impl<const N: usize> ConstFrozenStringN<N> {
55
55
}
56
56
}
57
57
58
- /// Obtain the [`FrozenValue`] for a [`ConstFrozenStringN `].
58
+ /// Obtain the [`FrozenValue`] for a [`StarlarkStrN `].
59
59
pub fn unpack ( & ' static self ) -> FrozenValue {
60
60
self . erase ( ) . unpack ( )
61
61
}
@@ -167,13 +167,12 @@ unsafe impl<'v> Trace<'v> for StringValue<'v> {
167
167
macro_rules! const_frozen_string {
168
168
( $s: expr) => { {
169
169
const N : usize = $s. len( ) ;
170
- static X : starlark:: values:: ConstFrozenStringN <N > =
171
- starlark:: values:: ConstFrozenStringN :: new( $s) ;
170
+ static X : starlark:: values:: StarlarkStrN <N > = starlark:: values:: StarlarkStrN :: new( $s) ;
172
171
X . erase( )
173
172
} } ;
174
173
}
175
174
176
- pub ( crate ) static VALUE_EMPTY_STRING : ConstFrozenStringN < 0 > = ConstFrozenStringN :: new ( "" ) ;
175
+ pub ( crate ) static VALUE_EMPTY_STRING : StarlarkStrN < 0 > = StarlarkStrN :: new ( "" ) ;
177
176
178
177
#[ inline( always) ]
179
178
pub ( crate ) fn constant_string ( x : & str ) -> Option < FrozenValue > {
@@ -188,133 +187,133 @@ pub(crate) fn constant_string(x: &str) -> Option<FrozenValue> {
188
187
}
189
188
}
190
189
191
- pub ( crate ) static VALUE_BYTE_STRINGS : [ ConstFrozenStringN < 1 > ; 128 ] = [
192
- ConstFrozenStringN :: new ( "\x00 " ) ,
193
- ConstFrozenStringN :: new ( "\x01 " ) ,
194
- ConstFrozenStringN :: new ( "\x02 " ) ,
195
- ConstFrozenStringN :: new ( "\x03 " ) ,
196
- ConstFrozenStringN :: new ( "\x04 " ) ,
197
- ConstFrozenStringN :: new ( "\x05 " ) ,
198
- ConstFrozenStringN :: new ( "\x06 " ) ,
199
- ConstFrozenStringN :: new ( "\x07 " ) ,
200
- ConstFrozenStringN :: new ( "\x08 " ) ,
201
- ConstFrozenStringN :: new ( "\x09 " ) ,
202
- ConstFrozenStringN :: new ( "\x0A " ) ,
203
- ConstFrozenStringN :: new ( "\x0B " ) ,
204
- ConstFrozenStringN :: new ( "\x0C " ) ,
205
- ConstFrozenStringN :: new ( "\x0D " ) ,
206
- ConstFrozenStringN :: new ( "\x0E " ) ,
207
- ConstFrozenStringN :: new ( "\x0F " ) ,
208
- ConstFrozenStringN :: new ( "\x10 " ) ,
209
- ConstFrozenStringN :: new ( "\x11 " ) ,
210
- ConstFrozenStringN :: new ( "\x12 " ) ,
211
- ConstFrozenStringN :: new ( "\x13 " ) ,
212
- ConstFrozenStringN :: new ( "\x14 " ) ,
213
- ConstFrozenStringN :: new ( "\x15 " ) ,
214
- ConstFrozenStringN :: new ( "\x16 " ) ,
215
- ConstFrozenStringN :: new ( "\x17 " ) ,
216
- ConstFrozenStringN :: new ( "\x18 " ) ,
217
- ConstFrozenStringN :: new ( "\x19 " ) ,
218
- ConstFrozenStringN :: new ( "\x1A " ) ,
219
- ConstFrozenStringN :: new ( "\x1B " ) ,
220
- ConstFrozenStringN :: new ( "\x1C " ) ,
221
- ConstFrozenStringN :: new ( "\x1D " ) ,
222
- ConstFrozenStringN :: new ( "\x1E " ) ,
223
- ConstFrozenStringN :: new ( "\x1F " ) ,
224
- ConstFrozenStringN :: new ( "\x20 " ) ,
225
- ConstFrozenStringN :: new ( "\x21 " ) ,
226
- ConstFrozenStringN :: new ( "\x22 " ) ,
227
- ConstFrozenStringN :: new ( "\x23 " ) ,
228
- ConstFrozenStringN :: new ( "\x24 " ) ,
229
- ConstFrozenStringN :: new ( "\x25 " ) ,
230
- ConstFrozenStringN :: new ( "\x26 " ) ,
231
- ConstFrozenStringN :: new ( "\x27 " ) ,
232
- ConstFrozenStringN :: new ( "\x28 " ) ,
233
- ConstFrozenStringN :: new ( "\x29 " ) ,
234
- ConstFrozenStringN :: new ( "\x2A " ) ,
235
- ConstFrozenStringN :: new ( "\x2B " ) ,
236
- ConstFrozenStringN :: new ( "\x2C " ) ,
237
- ConstFrozenStringN :: new ( "\x2D " ) ,
238
- ConstFrozenStringN :: new ( "\x2E " ) ,
239
- ConstFrozenStringN :: new ( "\x2F " ) ,
240
- ConstFrozenStringN :: new ( "\x30 " ) ,
241
- ConstFrozenStringN :: new ( "\x31 " ) ,
242
- ConstFrozenStringN :: new ( "\x32 " ) ,
243
- ConstFrozenStringN :: new ( "\x33 " ) ,
244
- ConstFrozenStringN :: new ( "\x34 " ) ,
245
- ConstFrozenStringN :: new ( "\x35 " ) ,
246
- ConstFrozenStringN :: new ( "\x36 " ) ,
247
- ConstFrozenStringN :: new ( "\x37 " ) ,
248
- ConstFrozenStringN :: new ( "\x38 " ) ,
249
- ConstFrozenStringN :: new ( "\x39 " ) ,
250
- ConstFrozenStringN :: new ( "\x3A " ) ,
251
- ConstFrozenStringN :: new ( "\x3B " ) ,
252
- ConstFrozenStringN :: new ( "\x3C " ) ,
253
- ConstFrozenStringN :: new ( "\x3D " ) ,
254
- ConstFrozenStringN :: new ( "\x3E " ) ,
255
- ConstFrozenStringN :: new ( "\x3F " ) ,
256
- ConstFrozenStringN :: new ( "\x40 " ) ,
257
- ConstFrozenStringN :: new ( "\x41 " ) ,
258
- ConstFrozenStringN :: new ( "\x42 " ) ,
259
- ConstFrozenStringN :: new ( "\x43 " ) ,
260
- ConstFrozenStringN :: new ( "\x44 " ) ,
261
- ConstFrozenStringN :: new ( "\x45 " ) ,
262
- ConstFrozenStringN :: new ( "\x46 " ) ,
263
- ConstFrozenStringN :: new ( "\x47 " ) ,
264
- ConstFrozenStringN :: new ( "\x48 " ) ,
265
- ConstFrozenStringN :: new ( "\x49 " ) ,
266
- ConstFrozenStringN :: new ( "\x4A " ) ,
267
- ConstFrozenStringN :: new ( "\x4B " ) ,
268
- ConstFrozenStringN :: new ( "\x4C " ) ,
269
- ConstFrozenStringN :: new ( "\x4D " ) ,
270
- ConstFrozenStringN :: new ( "\x4E " ) ,
271
- ConstFrozenStringN :: new ( "\x4F " ) ,
272
- ConstFrozenStringN :: new ( "\x50 " ) ,
273
- ConstFrozenStringN :: new ( "\x51 " ) ,
274
- ConstFrozenStringN :: new ( "\x52 " ) ,
275
- ConstFrozenStringN :: new ( "\x53 " ) ,
276
- ConstFrozenStringN :: new ( "\x54 " ) ,
277
- ConstFrozenStringN :: new ( "\x55 " ) ,
278
- ConstFrozenStringN :: new ( "\x56 " ) ,
279
- ConstFrozenStringN :: new ( "\x57 " ) ,
280
- ConstFrozenStringN :: new ( "\x58 " ) ,
281
- ConstFrozenStringN :: new ( "\x59 " ) ,
282
- ConstFrozenStringN :: new ( "\x5A " ) ,
283
- ConstFrozenStringN :: new ( "\x5B " ) ,
284
- ConstFrozenStringN :: new ( "\x5C " ) ,
285
- ConstFrozenStringN :: new ( "\x5D " ) ,
286
- ConstFrozenStringN :: new ( "\x5E " ) ,
287
- ConstFrozenStringN :: new ( "\x5F " ) ,
288
- ConstFrozenStringN :: new ( "\x60 " ) ,
289
- ConstFrozenStringN :: new ( "\x61 " ) ,
290
- ConstFrozenStringN :: new ( "\x62 " ) ,
291
- ConstFrozenStringN :: new ( "\x63 " ) ,
292
- ConstFrozenStringN :: new ( "\x64 " ) ,
293
- ConstFrozenStringN :: new ( "\x65 " ) ,
294
- ConstFrozenStringN :: new ( "\x66 " ) ,
295
- ConstFrozenStringN :: new ( "\x67 " ) ,
296
- ConstFrozenStringN :: new ( "\x68 " ) ,
297
- ConstFrozenStringN :: new ( "\x69 " ) ,
298
- ConstFrozenStringN :: new ( "\x6A " ) ,
299
- ConstFrozenStringN :: new ( "\x6B " ) ,
300
- ConstFrozenStringN :: new ( "\x6C " ) ,
301
- ConstFrozenStringN :: new ( "\x6D " ) ,
302
- ConstFrozenStringN :: new ( "\x6E " ) ,
303
- ConstFrozenStringN :: new ( "\x6F " ) ,
304
- ConstFrozenStringN :: new ( "\x70 " ) ,
305
- ConstFrozenStringN :: new ( "\x71 " ) ,
306
- ConstFrozenStringN :: new ( "\x72 " ) ,
307
- ConstFrozenStringN :: new ( "\x73 " ) ,
308
- ConstFrozenStringN :: new ( "\x74 " ) ,
309
- ConstFrozenStringN :: new ( "\x75 " ) ,
310
- ConstFrozenStringN :: new ( "\x76 " ) ,
311
- ConstFrozenStringN :: new ( "\x77 " ) ,
312
- ConstFrozenStringN :: new ( "\x78 " ) ,
313
- ConstFrozenStringN :: new ( "\x79 " ) ,
314
- ConstFrozenStringN :: new ( "\x7A " ) ,
315
- ConstFrozenStringN :: new ( "\x7B " ) ,
316
- ConstFrozenStringN :: new ( "\x7C " ) ,
317
- ConstFrozenStringN :: new ( "\x7D " ) ,
318
- ConstFrozenStringN :: new ( "\x7E " ) ,
319
- ConstFrozenStringN :: new ( "\x7F " ) ,
190
+ pub ( crate ) static VALUE_BYTE_STRINGS : [ StarlarkStrN < 1 > ; 128 ] = [
191
+ StarlarkStrN :: new ( "\x00 " ) ,
192
+ StarlarkStrN :: new ( "\x01 " ) ,
193
+ StarlarkStrN :: new ( "\x02 " ) ,
194
+ StarlarkStrN :: new ( "\x03 " ) ,
195
+ StarlarkStrN :: new ( "\x04 " ) ,
196
+ StarlarkStrN :: new ( "\x05 " ) ,
197
+ StarlarkStrN :: new ( "\x06 " ) ,
198
+ StarlarkStrN :: new ( "\x07 " ) ,
199
+ StarlarkStrN :: new ( "\x08 " ) ,
200
+ StarlarkStrN :: new ( "\x09 " ) ,
201
+ StarlarkStrN :: new ( "\x0A " ) ,
202
+ StarlarkStrN :: new ( "\x0B " ) ,
203
+ StarlarkStrN :: new ( "\x0C " ) ,
204
+ StarlarkStrN :: new ( "\x0D " ) ,
205
+ StarlarkStrN :: new ( "\x0E " ) ,
206
+ StarlarkStrN :: new ( "\x0F " ) ,
207
+ StarlarkStrN :: new ( "\x10 " ) ,
208
+ StarlarkStrN :: new ( "\x11 " ) ,
209
+ StarlarkStrN :: new ( "\x12 " ) ,
210
+ StarlarkStrN :: new ( "\x13 " ) ,
211
+ StarlarkStrN :: new ( "\x14 " ) ,
212
+ StarlarkStrN :: new ( "\x15 " ) ,
213
+ StarlarkStrN :: new ( "\x16 " ) ,
214
+ StarlarkStrN :: new ( "\x17 " ) ,
215
+ StarlarkStrN :: new ( "\x18 " ) ,
216
+ StarlarkStrN :: new ( "\x19 " ) ,
217
+ StarlarkStrN :: new ( "\x1A " ) ,
218
+ StarlarkStrN :: new ( "\x1B " ) ,
219
+ StarlarkStrN :: new ( "\x1C " ) ,
220
+ StarlarkStrN :: new ( "\x1D " ) ,
221
+ StarlarkStrN :: new ( "\x1E " ) ,
222
+ StarlarkStrN :: new ( "\x1F " ) ,
223
+ StarlarkStrN :: new ( "\x20 " ) ,
224
+ StarlarkStrN :: new ( "\x21 " ) ,
225
+ StarlarkStrN :: new ( "\x22 " ) ,
226
+ StarlarkStrN :: new ( "\x23 " ) ,
227
+ StarlarkStrN :: new ( "\x24 " ) ,
228
+ StarlarkStrN :: new ( "\x25 " ) ,
229
+ StarlarkStrN :: new ( "\x26 " ) ,
230
+ StarlarkStrN :: new ( "\x27 " ) ,
231
+ StarlarkStrN :: new ( "\x28 " ) ,
232
+ StarlarkStrN :: new ( "\x29 " ) ,
233
+ StarlarkStrN :: new ( "\x2A " ) ,
234
+ StarlarkStrN :: new ( "\x2B " ) ,
235
+ StarlarkStrN :: new ( "\x2C " ) ,
236
+ StarlarkStrN :: new ( "\x2D " ) ,
237
+ StarlarkStrN :: new ( "\x2E " ) ,
238
+ StarlarkStrN :: new ( "\x2F " ) ,
239
+ StarlarkStrN :: new ( "\x30 " ) ,
240
+ StarlarkStrN :: new ( "\x31 " ) ,
241
+ StarlarkStrN :: new ( "\x32 " ) ,
242
+ StarlarkStrN :: new ( "\x33 " ) ,
243
+ StarlarkStrN :: new ( "\x34 " ) ,
244
+ StarlarkStrN :: new ( "\x35 " ) ,
245
+ StarlarkStrN :: new ( "\x36 " ) ,
246
+ StarlarkStrN :: new ( "\x37 " ) ,
247
+ StarlarkStrN :: new ( "\x38 " ) ,
248
+ StarlarkStrN :: new ( "\x39 " ) ,
249
+ StarlarkStrN :: new ( "\x3A " ) ,
250
+ StarlarkStrN :: new ( "\x3B " ) ,
251
+ StarlarkStrN :: new ( "\x3C " ) ,
252
+ StarlarkStrN :: new ( "\x3D " ) ,
253
+ StarlarkStrN :: new ( "\x3E " ) ,
254
+ StarlarkStrN :: new ( "\x3F " ) ,
255
+ StarlarkStrN :: new ( "\x40 " ) ,
256
+ StarlarkStrN :: new ( "\x41 " ) ,
257
+ StarlarkStrN :: new ( "\x42 " ) ,
258
+ StarlarkStrN :: new ( "\x43 " ) ,
259
+ StarlarkStrN :: new ( "\x44 " ) ,
260
+ StarlarkStrN :: new ( "\x45 " ) ,
261
+ StarlarkStrN :: new ( "\x46 " ) ,
262
+ StarlarkStrN :: new ( "\x47 " ) ,
263
+ StarlarkStrN :: new ( "\x48 " ) ,
264
+ StarlarkStrN :: new ( "\x49 " ) ,
265
+ StarlarkStrN :: new ( "\x4A " ) ,
266
+ StarlarkStrN :: new ( "\x4B " ) ,
267
+ StarlarkStrN :: new ( "\x4C " ) ,
268
+ StarlarkStrN :: new ( "\x4D " ) ,
269
+ StarlarkStrN :: new ( "\x4E " ) ,
270
+ StarlarkStrN :: new ( "\x4F " ) ,
271
+ StarlarkStrN :: new ( "\x50 " ) ,
272
+ StarlarkStrN :: new ( "\x51 " ) ,
273
+ StarlarkStrN :: new ( "\x52 " ) ,
274
+ StarlarkStrN :: new ( "\x53 " ) ,
275
+ StarlarkStrN :: new ( "\x54 " ) ,
276
+ StarlarkStrN :: new ( "\x55 " ) ,
277
+ StarlarkStrN :: new ( "\x56 " ) ,
278
+ StarlarkStrN :: new ( "\x57 " ) ,
279
+ StarlarkStrN :: new ( "\x58 " ) ,
280
+ StarlarkStrN :: new ( "\x59 " ) ,
281
+ StarlarkStrN :: new ( "\x5A " ) ,
282
+ StarlarkStrN :: new ( "\x5B " ) ,
283
+ StarlarkStrN :: new ( "\x5C " ) ,
284
+ StarlarkStrN :: new ( "\x5D " ) ,
285
+ StarlarkStrN :: new ( "\x5E " ) ,
286
+ StarlarkStrN :: new ( "\x5F " ) ,
287
+ StarlarkStrN :: new ( "\x60 " ) ,
288
+ StarlarkStrN :: new ( "\x61 " ) ,
289
+ StarlarkStrN :: new ( "\x62 " ) ,
290
+ StarlarkStrN :: new ( "\x63 " ) ,
291
+ StarlarkStrN :: new ( "\x64 " ) ,
292
+ StarlarkStrN :: new ( "\x65 " ) ,
293
+ StarlarkStrN :: new ( "\x66 " ) ,
294
+ StarlarkStrN :: new ( "\x67 " ) ,
295
+ StarlarkStrN :: new ( "\x68 " ) ,
296
+ StarlarkStrN :: new ( "\x69 " ) ,
297
+ StarlarkStrN :: new ( "\x6A " ) ,
298
+ StarlarkStrN :: new ( "\x6B " ) ,
299
+ StarlarkStrN :: new ( "\x6C " ) ,
300
+ StarlarkStrN :: new ( "\x6D " ) ,
301
+ StarlarkStrN :: new ( "\x6E " ) ,
302
+ StarlarkStrN :: new ( "\x6F " ) ,
303
+ StarlarkStrN :: new ( "\x70 " ) ,
304
+ StarlarkStrN :: new ( "\x71 " ) ,
305
+ StarlarkStrN :: new ( "\x72 " ) ,
306
+ StarlarkStrN :: new ( "\x73 " ) ,
307
+ StarlarkStrN :: new ( "\x74 " ) ,
308
+ StarlarkStrN :: new ( "\x75 " ) ,
309
+ StarlarkStrN :: new ( "\x76 " ) ,
310
+ StarlarkStrN :: new ( "\x77 " ) ,
311
+ StarlarkStrN :: new ( "\x78 " ) ,
312
+ StarlarkStrN :: new ( "\x79 " ) ,
313
+ StarlarkStrN :: new ( "\x7A " ) ,
314
+ StarlarkStrN :: new ( "\x7B " ) ,
315
+ StarlarkStrN :: new ( "\x7C " ) ,
316
+ StarlarkStrN :: new ( "\x7D " ) ,
317
+ StarlarkStrN :: new ( "\x7E " ) ,
318
+ StarlarkStrN :: new ( "\x7F " ) ,
320
319
] ;
0 commit comments