1
1
from .object import Object
2
2
from .array import Array
3
- from .reader import Reader, Byte, Bytes, bytes_to_string, byte_to_string, compare_bytes, to_byte, compare_simd
3
+ from .reader import Reader, Byte, Bytes, bytes_to_string, byte_to_string, compare_bytes, to_byte, compare_simd, ByteVec
4
4
from utils import Variant, Span
5
5
from .constants import *
6
6
from sys.intrinsics import unlikely
@@ -24,8 +24,6 @@ struct Null(Stringable, EqualityComparableCollectionElement, Formattable, Repres
24
24
fn format_to (self , inout writer : Formatter):
25
25
writer.write(self .__str__ ())
26
26
27
- alias CharVec = SIMD [DType.uint8, _]
28
-
29
27
@always_inline
30
28
fn validate_string [origin : MutableOrigin](b : Span[Byte, origin]) raises :
31
29
alias SOL = to_byte(" /" )
@@ -37,8 +35,8 @@ fn validate_string[origin: MutableOrigin](b: Span[Byte, origin]) raises:
37
35
alias U = to_byte(" u" )
38
36
39
37
# can't be alias for some reason
40
- var acceptable_escapes = CharVec [16 ](QUOTE , RSOL , SOL , B, F, N, R, T, U)
41
- var control_chars = CharVec [4 ](NEWLINE , TAB , LINE_FEED )
38
+ var acceptable_escapes = ByteVec [16 ](QUOTE , RSOL , SOL , B, F, N, R, T, U)
39
+ var control_chars = ByteVec [4 ](NEWLINE , TAB , LINE_FEED )
42
40
i = 0
43
41
while i < len (b):
44
42
var char = b[i]
@@ -75,7 +73,7 @@ var NULL = SIMD[DType.uint8, 4](to_byte("n"), to_byte("u"), to_byte("l"), to_byt
75
73
@always_inline
76
74
@parameter
77
75
fn is_numerical_component (char : Byte) -> Bool:
78
- var componenents = CharVec [8 ](DOT , LOW_E , UPPER_E , PLUS , NEG )
76
+ var componenents = ByteVec [8 ](DOT , LOW_E , UPPER_E , PLUS , NEG )
79
77
return isdigit(char) or char in componenents
80
78
81
79
@always_inline
@@ -84,8 +82,8 @@ fn _read_number(inout reader: Reader) raises -> Variant[Int, Float64]:
84
82
var is_float = False
85
83
var first_digit_found = False
86
84
var leading_zero = False
87
- var float_parts = CharVec [4 ](DOT , LOW_E , UPPER_E )
88
- var sign_parts = CharVec [2 ](PLUS , NEG )
85
+ var float_parts = ByteVec [4 ](DOT , LOW_E , UPPER_E )
86
+ var sign_parts = ByteVec [2 ](PLUS , NEG )
89
87
for i in range (len (num)):
90
88
var b = num[i]
91
89
if b in float_parts:
0 commit comments