File tree Expand file tree Collapse file tree 4 files changed +2973
-2933
lines changed Expand file tree Collapse file tree 4 files changed +2973
-2933
lines changed Original file line number Diff line number Diff line change @@ -285,7 +285,7 @@ Type cast expressions
285285
2862861000 as u8;
287287let character = integer as char;
288- let size: f64 = len(values) as f64;
288+ let size: f64 = 1.0 + - len(values) as f64 + 1.0 ;
289289
290290--------------------------------------------------------------------------------
291291
@@ -302,12 +302,17 @@ let size: f64 = len(values) as f64;
302302 (let_declaration
303303 pattern: (identifier)
304304 type: (primitive_type)
305- value: (type_cast_expression
306- value: (call_expression
307- function: (identifier)
308- arguments: (arguments
309- (identifier)))
310- type: (primitive_type))))
305+ value: (binary_expression
306+ left: (binary_expression
307+ left: (float_literal)
308+ right: (type_cast_expression
309+ value: (unary_expression
310+ (call_expression
311+ function: (identifier)
312+ arguments: (arguments
313+ (identifier))))
314+ type: (primitive_type)))
315+ right: (float_literal))))
311316
312317================================================================================
313318Call expressions
Original file line number Diff line number Diff line change @@ -2,7 +2,8 @@ const PREC = {
22 range : 15 ,
33 call : 14 ,
44 field : 13 ,
5- unary : 11 ,
5+ unary : 12 ,
6+ cast : 11 ,
67 multiplicative : 10 ,
78 additive : 9 ,
89 shift : 8 ,
@@ -1074,11 +1075,11 @@ module.exports = grammar({
10741075 field ( 'right' , $ . _expression )
10751076 ) ) ,
10761077
1077- type_cast_expression : $ => seq (
1078+ type_cast_expression : $ => prec . left ( PREC . cast , seq (
10781079 field ( 'value' , $ . _expression ) ,
10791080 'as' ,
10801081 field ( 'type' , $ . _type )
1081- ) ,
1082+ ) ) ,
10821083
10831084 return_expression : $ => choice (
10841085 prec . left ( seq ( 'return' , $ . _expression ) ) ,
Original file line number Diff line number Diff line change 57985798 },
57995799 "unary_expression" : {
58005800 "type" : " PREC" ,
5801- "value" : 11 ,
5801+ "value" : 12 ,
58025802 "content" : {
58035803 "type" : " SEQ" ,
58045804 "members" : [
58415841 },
58425842 "reference_expression" : {
58435843 "type" : " PREC" ,
5844- "value" : 11 ,
5844+ "value" : 12 ,
58455845 "content" : {
58465846 "type" : " SEQ" ,
58475847 "members" : [
63346334 }
63356335 },
63366336 "type_cast_expression" : {
6337- "type" : " SEQ" ,
6338- "members" : [
6339- {
6340- "type" : " FIELD" ,
6341- "name" : " value" ,
6342- "content" : {
6343- "type" : " SYMBOL" ,
6344- "name" : " _expression"
6345- }
6346- },
6347- {
6348- "type" : " STRING" ,
6349- "value" : " as"
6350- },
6351- {
6352- "type" : " FIELD" ,
6353- "name" : " type" ,
6354- "content" : {
6355- "type" : " SYMBOL" ,
6356- "name" : " _type"
6337+ "type" : " PREC_LEFT" ,
6338+ "value" : 11 ,
6339+ "content" : {
6340+ "type" : " SEQ" ,
6341+ "members" : [
6342+ {
6343+ "type" : " FIELD" ,
6344+ "name" : " value" ,
6345+ "content" : {
6346+ "type" : " SYMBOL" ,
6347+ "name" : " _expression"
6348+ }
6349+ },
6350+ {
6351+ "type" : " STRING" ,
6352+ "value" : " as"
6353+ },
6354+ {
6355+ "type" : " FIELD" ,
6356+ "name" : " type" ,
6357+ "content" : {
6358+ "type" : " SYMBOL" ,
6359+ "name" : " _type"
6360+ }
63576361 }
6358- }
6359- ]
6362+ ]
6363+ }
63606364 },
63616365 "return_expression" : {
63626366 "type" : " CHOICE" ,
You can’t perform that action at this time.
0 commit comments