@@ -1200,71 +1200,77 @@ def test_apply_with_variant_args(self) -> None:
12001200 self .assertEqual (ast , Apply (Apply (Var ("f" ), TRUE ), FALSE ))
12011201
12021202 def test_parse_int_preserves_source_extent (self ) -> None :
1203- int_lit = IntLit (1 )
12041203 source_extent = SourceExtent (
12051204 start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 )
12061205 )
1207- int_lit . source_extent = source_extent
1206+ int_lit = make_source_annotated_token ( IntLit , source_extent , 1 )
12081207 self .assertTrue (parse (Peekable (iter ([int_lit ]))).source_extent == source_extent )
12091208
12101209 def test_parse_float_preserves_source_extent (self ) -> None :
1211- float_lit = FloatLit (3.2 )
12121210 source_extent = SourceExtent (
12131211 start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 )
12141212 )
1215- float_lit . source_extent = source_extent
1213+ float_lit = make_source_annotated_token ( FloatLit , source_extent , 3.2 )
12161214 self .assertTrue (parse (Peekable (iter ([float_lit ]))).source_extent == source_extent )
12171215
12181216 def test_parse_string_preserves_source_extent (self ) -> None :
1219- string_lit = StringLit ("Hello" )
12201217 source_extent = SourceExtent (
12211218 start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 7 , byteno = 6 )
12221219 )
1223- string_lit . source_extent = source_extent
1220+ string_lit = make_source_annotated_token ( StringLit , source_extent , "Hello" )
12241221 self .assertTrue (parse (Peekable (iter ([string_lit ]))).source_extent == source_extent )
12251222
12261223 def test_parse_bytes_preserves_source_extent (self ) -> None :
1227- bytes_lit = BytesLit ("QUJD" , 64 )
12281224 source_extent = SourceExtent (
12291225 start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 9 , byteno = 8 )
12301226 )
1231- bytes_lit . source_extent = source_extent
1227+ bytes_lit = make_source_annotated_token ( BytesLit , source_extent , "QUJD" , 64 )
12321228 self .assertTrue (parse (Peekable (iter ([bytes_lit ]))).source_extent == source_extent )
12331229
12341230 def test_parse_var_preserves_source_extent (self ) -> None :
1235- var = Name ("x" )
12361231 source_extent = SourceExtent (
12371232 start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 )
12381233 )
1239- var . source_extent = source_extent
1234+ var = make_source_annotated_token ( Name , source_extent , "x" )
12401235 self .assertTrue (parse (Peekable (iter ([var ]))).source_extent == source_extent )
12411236
12421237 def test_parse_hole_preserves_source_extent (self ) -> None :
1243- left_paren = LeftParen ()
1244- left_paren .source_extent = SourceExtent (
1245- start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 )
1238+ left_paren = make_source_annotated_token (
1239+ LeftParen ,
1240+ SourceExtent (
1241+ start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 )
1242+ ),
12461243 )
1247- right_paren = RightParen ()
1248- right_paren .source_extent = SourceExtent (
1249- start = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 ), end = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 )
1244+ right_paren = make_source_annotated_token (
1245+ RightParen ,
1246+ SourceExtent (
1247+ start = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 ), end = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 )
1248+ ),
12501249 )
12511250 hole_source_extent = SourceExtent (
12521251 start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 )
12531252 )
12541253 self .assertTrue (parse (Peekable (iter ([left_paren , right_paren ]))).source_extent == hole_source_extent )
12551254
12561255 def test_parenthesized_expression_preserves_source_extent (self ) -> None :
1257- left_paren = LeftParen ()
1258- left_paren .source_extent = SourceExtent (
1259- start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 )
1256+ left_paren = make_source_annotated_token (
1257+ LeftParen ,
1258+ SourceExtent (
1259+ start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 )
1260+ ),
12601261 )
1261- int_lit = IntLit (1 )
1262- int_lit .source_extent = SourceExtent (
1263- start = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 ), end = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 )
1262+ int_lit = make_source_annotated_token (
1263+ IntLit ,
1264+ SourceExtent (
1265+ start = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 ), end = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 )
1266+ ),
1267+ 1 ,
12641268 )
1265- right_paren = RightParen ()
1266- right_paren .source_extent = SourceExtent (
1267- start = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 ), end = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 )
1269+ right_paren = make_source_annotated_token (
1270+ RightParen ,
1271+ SourceExtent (
1272+ start = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 ), end = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 )
1273+ ),
12681274 )
12691275 parenthesized_int_lit_source_extent = SourceExtent (
12701276 start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 )
@@ -1275,31 +1281,46 @@ def test_parenthesized_expression_preserves_source_extent(self) -> None:
12751281 )
12761282
12771283 def test_parse_spread_preserves_source_extent (self ) -> None :
1278- ellipsis = Operator ("..." )
1279- ellipsis .source_extent = SourceExtent (
1280- start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 )
1284+ ellipsis = make_source_annotated_token (
1285+ Operator ,
1286+ SourceExtent (
1287+ start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 )
1288+ ),
1289+ "..." ,
12811290 )
1282- name = Name ("x" )
1283- name .source_extent = SourceExtent (
1284- start = SourceLocation (lineno = 1 , colno = 4 , byteno = 3 ), end = SourceLocation (lineno = 1 , colno = 4 , byteno = 3 )
1291+ name = make_source_annotated_token (
1292+ Name ,
1293+ SourceExtent (
1294+ start = SourceLocation (lineno = 1 , colno = 4 , byteno = 3 ), end = SourceLocation (lineno = 1 , colno = 4 , byteno = 3 )
1295+ ),
1296+ "x" ,
12851297 )
12861298 spread_source_extent = SourceExtent (
12871299 start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 4 , byteno = 3 )
12881300 )
12891301 self .assertTrue (parse (Peekable (iter ([ellipsis , name ]))).source_extent == spread_source_extent )
12901302
12911303 def test_parse_binop_preserves_source_extent (self ) -> None :
1292- first_addend = IntLit (1 )
1293- first_addend .source_extent = SourceExtent (
1294- start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 )
1304+ first_addend = make_source_annotated_token (
1305+ IntLit ,
1306+ SourceExtent (
1307+ start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 )
1308+ ),
1309+ 1 ,
12951310 )
1296- operator = Operator ("+" )
1297- operator .source_extent = SourceExtent (
1298- start = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 ), end = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 )
1311+ operator = make_source_annotated_token (
1312+ Operator ,
1313+ SourceExtent (
1314+ start = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 ), end = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 )
1315+ ),
1316+ "+" ,
12991317 )
1300- second_addend = IntLit (2 )
1301- second_addend .source_extent = SourceExtent (
1302- start = SourceLocation (lineno = 2 , colno = 5 , byteno = 4 ), end = SourceLocation (lineno = 2 , colno = 5 , byteno = 4 )
1318+ second_addend = make_source_annotated_token (
1319+ IntLit ,
1320+ SourceExtent (
1321+ start = SourceLocation (lineno = 2 , colno = 5 , byteno = 4 ), end = SourceLocation (lineno = 2 , colno = 5 , byteno = 4 )
1322+ ),
1323+ 2 ,
13031324 )
13041325 binop_source_extent = SourceExtent (
13051326 start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 2 , colno = 5 , byteno = 4 )
@@ -1309,25 +1330,38 @@ def test_parse_binop_preserves_source_extent(self) -> None:
13091330 )
13101331
13111332 def test_parse_list_preserves_source_extent (self ) -> None :
1312- left_bracket = LeftBracket ()
1313- left_bracket .source_extent = SourceExtent (
1314- start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 )
1333+ left_bracket = make_source_annotated_token (
1334+ LeftBracket ,
1335+ SourceExtent (
1336+ start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 )
1337+ ),
13151338 )
1316- one = IntLit (1 )
1317- one .source_extent = SourceExtent (
1318- start = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 ), end = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 )
1339+ one = make_source_annotated_token (
1340+ IntLit ,
1341+ SourceExtent (
1342+ start = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 ), end = SourceLocation (lineno = 1 , colno = 2 , byteno = 1 )
1343+ ),
1344+ 1 ,
13191345 )
1320- comma = Operator ("," )
1321- comma .source_extent = SourceExtent (
1322- start = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 ), end = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 )
1346+ comma = make_source_annotated_token (
1347+ Operator ,
1348+ SourceExtent (
1349+ start = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 ), end = SourceLocation (lineno = 1 , colno = 3 , byteno = 2 )
1350+ ),
1351+ "," ,
13231352 )
1324- two = IntLit (2 )
1325- two .source_extent = SourceExtent (
1326- start = SourceLocation (lineno = 1 , colno = 5 , byteno = 4 ), end = SourceLocation (lineno = 1 , colno = 5 , byteno = 4 )
1353+ two = make_source_annotated_token (
1354+ IntLit ,
1355+ SourceExtent (
1356+ start = SourceLocation (lineno = 1 , colno = 5 , byteno = 4 ), end = SourceLocation (lineno = 1 , colno = 5 , byteno = 4 )
1357+ ),
1358+ 2 ,
13271359 )
1328- right_bracket = RightBracket ()
1329- right_bracket .source_extent = SourceExtent (
1330- start = SourceLocation (lineno = 1 , colno = 6 , byteno = 5 ), end = SourceLocation (lineno = 1 , colno = 6 , byteno = 5 )
1360+ right_bracket = make_source_annotated_token (
1361+ RightBracket ,
1362+ SourceExtent (
1363+ start = SourceLocation (lineno = 1 , colno = 6 , byteno = 5 ), end = SourceLocation (lineno = 1 , colno = 6 , byteno = 5 )
1364+ ),
13311365 )
13321366 list_source_extent = SourceExtent (
13331367 start = SourceLocation (lineno = 1 , colno = 1 , byteno = 0 ), end = SourceLocation (lineno = 1 , colno = 6 , byteno = 5 )
0 commit comments