diff --git a/crates/parser/src/grammar/expression.rs b/crates/parser/src/grammar/expression.rs index 6c77774..8b069a5 100644 --- a/crates/parser/src/grammar/expression.rs +++ b/crates/parser/src/grammar/expression.rs @@ -134,7 +134,7 @@ pub fn expression_rec(p: &mut Parser, pb: u16) -> Option { let open_marker = p.open_before(lhs); // consume token ++/-- and do nothing p.advance(); - p.close(open_marker, Expression); + p.close(open_marker, kind); } _ => { // not a postfix token diff --git a/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__block.circom.snap b/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__block.circom.snap index 11106df..29ff0f2 100644 --- a/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__block.circom.snap +++ b/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__block.circom.snap @@ -98,439 +98,429 @@ expression: "crate :: view_syntax :: view_ast(& syntax)" | | | EndLine 157..159 "\r\n" | | WhiteSpace 159..171 | | | WhiteSpace 159..171 " " -| | Statement 171..257 -| | | ForLoop 171..257 -| | | | ForKw 171..174 -| | | | | ForKw 171..174 "for" -| | | | LParen 174..175 -| | | | | LParen 174..175 "(" -| | | | VarDecl 175..184 -| | | | | VarKw 175..178 -| | | | | | VarKw 175..178 "var" -| | | | | WhiteSpace 178..179 -| | | | | | WhiteSpace 178..179 " " -| | | | | VarIdentifier 179..181 -| | | | | | Identifier 179..180 -| | | | | | | Identifier 179..180 "i" -| | | | | | WhiteSpace 180..181 -| | | | | | | WhiteSpace 180..181 " " -| | | | | Assign 181..182 -| | | | | | Assign 181..182 "=" -| | | | | WhiteSpace 182..183 -| | | | | | WhiteSpace 182..183 " " -| | | | | Expression 183..184 -| | | | | | ExpressionAtom 183..184 -| | | | | | | Number 183..184 -| | | | | | | | Number 183..184 "0" -| | | | Semicolon 184..185 -| | | | | Semicolon 184..185 ";" -| | | | WhiteSpace 185..186 -| | | | | WhiteSpace 185..186 " " -| | | | Expression 186..193 -| | | | | LessThan 186..193 -| | | | | | ExpressionAtom 186..187 -| | | | | | | Identifier 186..187 -| | | | | | | | Identifier 186..187 "i" -| | | | | | WhiteSpace 187..188 -| | | | | | | WhiteSpace 187..188 " " -| | | | | | LessThan 188..189 -| | | | | | | LessThan 188..189 "<" -| | | | | | WhiteSpace 189..190 -| | | | | | | WhiteSpace 189..190 " " -| | | | | | Sub 190..193 -| | | | | | | ExpressionAtom 190..191 -| | | | | | | | Identifier 190..191 -| | | | | | | | | Identifier 190..191 "N" -| | | | | | | Sub 191..192 -| | | | | | | | Sub 191..192 "-" -| | | | | | | ExpressionAtom 192..193 -| | | | | | | | Number 192..193 -| | | | | | | | | Number 192..193 "1" -| | | | Semicolon 193..194 -| | | | | Semicolon 193..194 ";" -| | | | WhiteSpace 194..195 -| | | | | WhiteSpace 194..195 " " -| | | | AssignStatement 195..198 -| | | | | Expression 195..198 -| | | | | | Expression 195..198 -| | | | | | | ExpressionAtom 195..196 -| | | | | | | | Identifier 195..196 -| | | | | | | | | Identifier 195..196 "i" -| | | | | | | UnitInc 196..198 -| | | | | | | | UnitInc 196..198 "++" -| | | | RParen 198..199 -| | | | | RParen 198..199 ")" -| | | | Statement 199..257 -| | | | | Block 199..257 -| | | | | | LCurly 199..200 -| | | | | | | LCurly 199..200 "{" -| | | | | | EndLine 200..202 -| | | | | | | EndLine 200..202 "\r\n" -| | | | | | WhiteSpace 202..218 -| | | | | | | WhiteSpace 202..218 " " -| | | | | | StatementList 218..256 -| | | | | | | Statement 218..242 -| | | | | | | | AssignStatement 218..241 -| | | | | | | | | Expression 218..226 -| | | | | | | | | | ArrayQuery 218..225 -| | | | | | | | | | | ExpressionAtom 218..222 -| | | | | | | | | | | | Identifier 218..222 -| | | | | | | | | | | | | Identifier 218..222 "comp" -| | | | | | | | | | | LBracket 222..223 -| | | | | | | | | | | | LBracket 222..223 "[" -| | | | | | | | | | | Expression 223..224 -| | | | | | | | | | | | ExpressionAtom 223..224 -| | | | | | | | | | | | | Identifier 223..224 -| | | | | | | | | | | | | | Identifier 223..224 "i" -| | | | | | | | | | | RBracket 224..225 -| | | | | | | | | | | | RBracket 224..225 "]" -| | | | | | | | | | WhiteSpace 225..226 -| | | | | | | | | | | WhiteSpace 225..226 " " -| | | | | | | | | Assign 226..227 -| | | | | | | | | | Assign 226..227 "=" -| | | | | | | | | WhiteSpace 227..228 -| | | | | | | | | | WhiteSpace 227..228 " " -| | | | | | | | | Expression 228..241 -| | | | | | | | | | Call 228..241 -| | | | | | | | | | | ExpressionAtom 228..239 -| | | | | | | | | | | | Identifier 228..239 -| | | | | | | | | | | | | Identifier 228..239 "Multiplier2" -| | | | | | | | | | | LParen 239..240 -| | | | | | | | | | | | LParen 239..240 "(" -| | | | | | | | | | | RParen 240..241 -| | | | | | | | | | | | RParen 240..241 ")" -| | | | | | | | Semicolon 241..242 -| | | | | | | | | Semicolon 241..242 ";" -| | | | | | | EndLine 242..244 -| | | | | | | | EndLine 242..244 "\r\n" -| | | | | | | WhiteSpace 244..256 -| | | | | | | | WhiteSpace 244..256 " " -| | | | | | RCurly 256..257 -| | | | | | | RCurly 256..257 "}" +| | ForLoop 171..257 +| | | ForKw 171..174 +| | | | ForKw 171..174 "for" +| | | LParen 174..175 +| | | | LParen 174..175 "(" +| | | VarDecl 175..184 +| | | | VarKw 175..178 +| | | | | VarKw 175..178 "var" +| | | | WhiteSpace 178..179 +| | | | | WhiteSpace 178..179 " " +| | | | VarIdentifier 179..181 +| | | | | Identifier 179..180 +| | | | | | Identifier 179..180 "i" +| | | | | WhiteSpace 180..181 +| | | | | | WhiteSpace 180..181 " " +| | | | Assign 181..182 +| | | | | Assign 181..182 "=" +| | | | WhiteSpace 182..183 +| | | | | WhiteSpace 182..183 " " +| | | | Expression 183..184 +| | | | | ExpressionAtom 183..184 +| | | | | | Number 183..184 +| | | | | | | Number 183..184 "0" +| | | Semicolon 184..185 +| | | | Semicolon 184..185 ";" +| | | WhiteSpace 185..186 +| | | | WhiteSpace 185..186 " " +| | | Expression 186..193 +| | | | LessThan 186..193 +| | | | | ExpressionAtom 186..187 +| | | | | | Identifier 186..187 +| | | | | | | Identifier 186..187 "i" +| | | | | WhiteSpace 187..188 +| | | | | | WhiteSpace 187..188 " " +| | | | | LessThan 188..189 +| | | | | | LessThan 188..189 "<" +| | | | | WhiteSpace 189..190 +| | | | | | WhiteSpace 189..190 " " +| | | | | Sub 190..193 +| | | | | | ExpressionAtom 190..191 +| | | | | | | Identifier 190..191 +| | | | | | | | Identifier 190..191 "N" +| | | | | | Sub 191..192 +| | | | | | | Sub 191..192 "-" +| | | | | | ExpressionAtom 192..193 +| | | | | | | Number 192..193 +| | | | | | | | Number 192..193 "1" +| | | Semicolon 193..194 +| | | | Semicolon 193..194 ";" +| | | WhiteSpace 194..195 +| | | | WhiteSpace 194..195 " " +| | | AssignStatement 195..198 +| | | | Expression 195..198 +| | | | | UnitInc 195..198 +| | | | | | ExpressionAtom 195..196 +| | | | | | | Identifier 195..196 +| | | | | | | | Identifier 195..196 "i" +| | | | | | UnitInc 196..198 +| | | | | | | UnitInc 196..198 "++" +| | | RParen 198..199 +| | | | RParen 198..199 ")" +| | | Block 199..257 +| | | | LCurly 199..200 +| | | | | LCurly 199..200 "{" +| | | | EndLine 200..202 +| | | | | EndLine 200..202 "\r\n" +| | | | WhiteSpace 202..218 +| | | | | WhiteSpace 202..218 " " +| | | | StatementList 218..256 +| | | | | AssignStatement 218..241 +| | | | | | Expression 218..226 +| | | | | | | ArrayQuery 218..225 +| | | | | | | | ExpressionAtom 218..222 +| | | | | | | | | Identifier 218..222 +| | | | | | | | | | Identifier 218..222 "comp" +| | | | | | | | LBracket 222..223 +| | | | | | | | | LBracket 222..223 "[" +| | | | | | | | Expression 223..224 +| | | | | | | | | ExpressionAtom 223..224 +| | | | | | | | | | Identifier 223..224 +| | | | | | | | | | | Identifier 223..224 "i" +| | | | | | | | RBracket 224..225 +| | | | | | | | | RBracket 224..225 "]" +| | | | | | | WhiteSpace 225..226 +| | | | | | | | WhiteSpace 225..226 " " +| | | | | | Assign 226..227 +| | | | | | | Assign 226..227 "=" +| | | | | | WhiteSpace 227..228 +| | | | | | | WhiteSpace 227..228 " " +| | | | | | Expression 228..241 +| | | | | | | Call 228..241 +| | | | | | | | ExpressionAtom 228..239 +| | | | | | | | | Identifier 228..239 +| | | | | | | | | | Identifier 228..239 "Multiplier2" +| | | | | | | | LParen 239..240 +| | | | | | | | | LParen 239..240 "(" +| | | | | | | | RParen 240..241 +| | | | | | | | | RParen 240..241 ")" +| | | | | Semicolon 241..242 +| | | | | | Semicolon 241..242 ";" +| | | | | EndLine 242..244 +| | | | | | EndLine 242..244 "\r\n" +| | | | | WhiteSpace 244..256 +| | | | | | WhiteSpace 244..256 " " +| | | | RCurly 256..257 +| | | | | RCurly 256..257 "}" | | EndLine 257..259 | | | EndLine 257..259 "\r\n" | | WhiteSpace 259..271 | | | WhiteSpace 259..271 " " -| | Statement 271..293 -| | | AssignStatement 271..292 -| | | | Expression 271..283 -| | | | | ComponentCall 271..282 -| | | | | | ArrayQuery 271..278 -| | | | | | | ExpressionAtom 271..275 -| | | | | | | | Identifier 271..275 -| | | | | | | | | Identifier 271..275 "comp" -| | | | | | | LBracket 275..276 -| | | | | | | | LBracket 275..276 "[" -| | | | | | | Expression 276..277 -| | | | | | | | ExpressionAtom 276..277 -| | | | | | | | | Number 276..277 -| | | | | | | | | | Number 276..277 "0" -| | | | | | | RBracket 277..278 -| | | | | | | | RBracket 277..278 "]" -| | | | | | Dot 278..279 -| | | | | | | Dot 278..279 "." -| | | | | | Identifier 279..282 -| | | | | | | Identifier 279..282 "in1" -| | | | | WhiteSpace 282..283 -| | | | | | WhiteSpace 282..283 " " -| | | | RAssignConstraintSignal 283..286 -| | | | | RAssignConstraintSignal 283..286 "<==" -| | | | WhiteSpace 286..287 -| | | | | WhiteSpace 286..287 " " -| | | | Expression 287..292 -| | | | | ArrayQuery 287..292 -| | | | | | ExpressionAtom 287..289 -| | | | | | | Identifier 287..289 -| | | | | | | | Identifier 287..289 "in" -| | | | | | LBracket 289..290 -| | | | | | | LBracket 289..290 "[" -| | | | | | Expression 290..291 -| | | | | | | ExpressionAtom 290..291 -| | | | | | | | Number 290..291 -| | | | | | | | | Number 290..291 "0" -| | | | | | RBracket 291..292 -| | | | | | | RBracket 291..292 "]" -| | | Semicolon 292..293 -| | | | Semicolon 292..293 ";" +| | AssignStatement 271..292 +| | | Expression 271..283 +| | | | ComponentCall 271..282 +| | | | | ArrayQuery 271..278 +| | | | | | ExpressionAtom 271..275 +| | | | | | | Identifier 271..275 +| | | | | | | | Identifier 271..275 "comp" +| | | | | | LBracket 275..276 +| | | | | | | LBracket 275..276 "[" +| | | | | | Expression 276..277 +| | | | | | | ExpressionAtom 276..277 +| | | | | | | | Number 276..277 +| | | | | | | | | Number 276..277 "0" +| | | | | | RBracket 277..278 +| | | | | | | RBracket 277..278 "]" +| | | | | Dot 278..279 +| | | | | | Dot 278..279 "." +| | | | | Identifier 279..282 +| | | | | | Identifier 279..282 "in1" +| | | | WhiteSpace 282..283 +| | | | | WhiteSpace 282..283 " " +| | | RAssignConstraintSignal 283..286 +| | | | RAssignConstraintSignal 283..286 "<==" +| | | WhiteSpace 286..287 +| | | | WhiteSpace 286..287 " " +| | | Expression 287..292 +| | | | ArrayQuery 287..292 +| | | | | ExpressionAtom 287..289 +| | | | | | Identifier 287..289 +| | | | | | | Identifier 287..289 "in" +| | | | | LBracket 289..290 +| | | | | | LBracket 289..290 "[" +| | | | | Expression 290..291 +| | | | | | ExpressionAtom 290..291 +| | | | | | | Number 290..291 +| | | | | | | | Number 290..291 "0" +| | | | | RBracket 291..292 +| | | | | | RBracket 291..292 "]" +| | Semicolon 292..293 +| | | Semicolon 292..293 ";" | | EndLine 293..295 | | | EndLine 293..295 "\r\n" | | WhiteSpace 295..307 | | | WhiteSpace 295..307 " " -| | Statement 307..329 -| | | AssignStatement 307..328 -| | | | Expression 307..319 -| | | | | ComponentCall 307..318 -| | | | | | ArrayQuery 307..314 -| | | | | | | ExpressionAtom 307..311 -| | | | | | | | Identifier 307..311 -| | | | | | | | | Identifier 307..311 "comp" -| | | | | | | LBracket 311..312 -| | | | | | | | LBracket 311..312 "[" -| | | | | | | Expression 312..313 -| | | | | | | | ExpressionAtom 312..313 -| | | | | | | | | Number 312..313 -| | | | | | | | | | Number 312..313 "0" -| | | | | | | RBracket 313..314 -| | | | | | | | RBracket 313..314 "]" -| | | | | | Dot 314..315 -| | | | | | | Dot 314..315 "." -| | | | | | Identifier 315..318 -| | | | | | | Identifier 315..318 "in2" -| | | | | WhiteSpace 318..319 -| | | | | | WhiteSpace 318..319 " " -| | | | RAssignConstraintSignal 319..322 -| | | | | RAssignConstraintSignal 319..322 "<==" -| | | | WhiteSpace 322..323 -| | | | | WhiteSpace 322..323 " " -| | | | Expression 323..328 -| | | | | ArrayQuery 323..328 -| | | | | | ExpressionAtom 323..325 -| | | | | | | Identifier 323..325 -| | | | | | | | Identifier 323..325 "in" -| | | | | | LBracket 325..326 -| | | | | | | LBracket 325..326 "[" -| | | | | | Expression 326..327 -| | | | | | | ExpressionAtom 326..327 -| | | | | | | | Number 326..327 -| | | | | | | | | Number 326..327 "1" -| | | | | | RBracket 327..328 -| | | | | | | RBracket 327..328 "]" -| | | Semicolon 328..329 -| | | | Semicolon 328..329 ";" +| | AssignStatement 307..328 +| | | Expression 307..319 +| | | | ComponentCall 307..318 +| | | | | ArrayQuery 307..314 +| | | | | | ExpressionAtom 307..311 +| | | | | | | Identifier 307..311 +| | | | | | | | Identifier 307..311 "comp" +| | | | | | LBracket 311..312 +| | | | | | | LBracket 311..312 "[" +| | | | | | Expression 312..313 +| | | | | | | ExpressionAtom 312..313 +| | | | | | | | Number 312..313 +| | | | | | | | | Number 312..313 "0" +| | | | | | RBracket 313..314 +| | | | | | | RBracket 313..314 "]" +| | | | | Dot 314..315 +| | | | | | Dot 314..315 "." +| | | | | Identifier 315..318 +| | | | | | Identifier 315..318 "in2" +| | | | WhiteSpace 318..319 +| | | | | WhiteSpace 318..319 " " +| | | RAssignConstraintSignal 319..322 +| | | | RAssignConstraintSignal 319..322 "<==" +| | | WhiteSpace 322..323 +| | | | WhiteSpace 322..323 " " +| | | Expression 323..328 +| | | | ArrayQuery 323..328 +| | | | | ExpressionAtom 323..325 +| | | | | | Identifier 323..325 +| | | | | | | Identifier 323..325 "in" +| | | | | LBracket 325..326 +| | | | | | LBracket 325..326 "[" +| | | | | Expression 326..327 +| | | | | | ExpressionAtom 326..327 +| | | | | | | Number 326..327 +| | | | | | | | Number 326..327 "1" +| | | | | RBracket 327..328 +| | | | | | RBracket 327..328 "]" +| | Semicolon 328..329 +| | | Semicolon 328..329 ";" | | EndLine 329..331 | | | EndLine 329..331 "\r\n" | | WhiteSpace 331..343 | | | WhiteSpace 331..343 " " -| | Statement 343..481 -| | | ForLoop 343..481 -| | | | ForKw 343..346 -| | | | | ForKw 343..346 "for" -| | | | LParen 346..347 -| | | | | LParen 346..347 "(" -| | | | VarDecl 347..356 -| | | | | VarKw 347..350 -| | | | | | VarKw 347..350 "var" -| | | | | WhiteSpace 350..351 -| | | | | | WhiteSpace 350..351 " " -| | | | | VarIdentifier 351..353 -| | | | | | Identifier 351..352 -| | | | | | | Identifier 351..352 "i" -| | | | | | WhiteSpace 352..353 -| | | | | | | WhiteSpace 352..353 " " -| | | | | Assign 353..354 -| | | | | | Assign 353..354 "=" -| | | | | WhiteSpace 354..355 -| | | | | | WhiteSpace 354..355 " " -| | | | | Expression 355..356 -| | | | | | ExpressionAtom 355..356 -| | | | | | | Number 355..356 -| | | | | | | | Number 355..356 "0" -| | | | Semicolon 356..357 -| | | | | Semicolon 356..357 ";" -| | | | WhiteSpace 357..358 -| | | | | WhiteSpace 357..358 " " -| | | | Expression 358..365 -| | | | | LessThan 358..365 -| | | | | | ExpressionAtom 358..359 -| | | | | | | Identifier 358..359 -| | | | | | | | Identifier 358..359 "i" -| | | | | | WhiteSpace 359..360 -| | | | | | | WhiteSpace 359..360 " " -| | | | | | LessThan 360..361 -| | | | | | | LessThan 360..361 "<" -| | | | | | WhiteSpace 361..362 -| | | | | | | WhiteSpace 361..362 " " -| | | | | | Sub 362..365 -| | | | | | | ExpressionAtom 362..363 -| | | | | | | | Identifier 362..363 -| | | | | | | | | Identifier 362..363 "N" -| | | | | | | Sub 363..364 -| | | | | | | | Sub 363..364 "-" -| | | | | | | ExpressionAtom 364..365 -| | | | | | | | Number 364..365 -| | | | | | | | | Number 364..365 "2" -| | | | Semicolon 365..366 -| | | | | Semicolon 365..366 ";" -| | | | WhiteSpace 366..367 -| | | | | WhiteSpace 366..367 " " -| | | | AssignStatement 367..370 -| | | | | Expression 367..370 -| | | | | | Expression 367..370 -| | | | | | | ExpressionAtom 367..368 -| | | | | | | | Identifier 367..368 -| | | | | | | | | Identifier 367..368 "i" -| | | | | | | UnitInc 368..370 -| | | | | | | | UnitInc 368..370 "++" -| | | | RParen 370..371 -| | | | | RParen 370..371 ")" -| | | | Statement 371..481 -| | | | | Block 371..481 -| | | | | | LCurly 371..372 -| | | | | | | LCurly 371..372 "{" -| | | | | | EndLine 372..374 -| | | | | | | EndLine 372..374 "\r\n" -| | | | | | WhiteSpace 374..390 -| | | | | | | WhiteSpace 374..390 " " -| | | | | | StatementList 390..480 -| | | | | | | Statement 390..420 -| | | | | | | | AssignStatement 390..419 -| | | | | | | | | Expression 390..404 -| | | | | | | | | | ComponentCall 390..403 -| | | | | | | | | | | ArrayQuery 390..399 -| | | | | | | | | | | | ExpressionAtom 390..394 -| | | | | | | | | | | | | Identifier 390..394 -| | | | | | | | | | | | | | Identifier 390..394 "comp" -| | | | | | | | | | | | LBracket 394..395 -| | | | | | | | | | | | | LBracket 394..395 "[" -| | | | | | | | | | | | Expression 395..398 -| | | | | | | | | | | | | Add 395..398 -| | | | | | | | | | | | | | ExpressionAtom 395..396 -| | | | | | | | | | | | | | | Identifier 395..396 -| | | | | | | | | | | | | | | | Identifier 395..396 "i" -| | | | | | | | | | | | | | Add 396..397 -| | | | | | | | | | | | | | | Add 396..397 "+" -| | | | | | | | | | | | | | ExpressionAtom 397..398 -| | | | | | | | | | | | | | | Number 397..398 -| | | | | | | | | | | | | | | | Number 397..398 "1" -| | | | | | | | | | | | RBracket 398..399 -| | | | | | | | | | | | | RBracket 398..399 "]" -| | | | | | | | | | | Dot 399..400 -| | | | | | | | | | | | Dot 399..400 "." -| | | | | | | | | | | Identifier 400..403 -| | | | | | | | | | | | Identifier 400..403 "in1" -| | | | | | | | | | WhiteSpace 403..404 -| | | | | | | | | | | WhiteSpace 403..404 " " -| | | | | | | | | RAssignConstraintSignal 404..407 -| | | | | | | | | | RAssignConstraintSignal 404..407 "<==" -| | | | | | | | | WhiteSpace 407..408 -| | | | | | | | | | WhiteSpace 407..408 " " -| | | | | | | | | Expression 408..419 -| | | | | | | | | | ComponentCall 408..419 -| | | | | | | | | | | ArrayQuery 408..415 -| | | | | | | | | | | | ExpressionAtom 408..412 -| | | | | | | | | | | | | Identifier 408..412 -| | | | | | | | | | | | | | Identifier 408..412 "comp" -| | | | | | | | | | | | LBracket 412..413 -| | | | | | | | | | | | | LBracket 412..413 "[" -| | | | | | | | | | | | Expression 413..414 -| | | | | | | | | | | | | ExpressionAtom 413..414 -| | | | | | | | | | | | | | Identifier 413..414 -| | | | | | | | | | | | | | | Identifier 413..414 "i" -| | | | | | | | | | | | RBracket 414..415 -| | | | | | | | | | | | | RBracket 414..415 "]" -| | | | | | | | | | | Dot 415..416 -| | | | | | | | | | | | Dot 415..416 "." -| | | | | | | | | | | Identifier 416..419 -| | | | | | | | | | | | Identifier 416..419 "out" -| | | | | | | | Semicolon 419..420 -| | | | | | | | | Semicolon 419..420 ";" -| | | | | | | EndLine 420..422 -| | | | | | | | EndLine 420..422 "\r\n" -| | | | | | | WhiteSpace 422..438 -| | | | | | | | WhiteSpace 422..438 " " -| | | | | | | Statement 438..464 -| | | | | | | | AssignStatement 438..463 -| | | | | | | | | Expression 438..452 -| | | | | | | | | | ComponentCall 438..451 -| | | | | | | | | | | ArrayQuery 438..447 -| | | | | | | | | | | | ExpressionAtom 438..442 -| | | | | | | | | | | | | Identifier 438..442 -| | | | | | | | | | | | | | Identifier 438..442 "comp" -| | | | | | | | | | | | LBracket 442..443 -| | | | | | | | | | | | | LBracket 442..443 "[" -| | | | | | | | | | | | Expression 443..446 -| | | | | | | | | | | | | Add 443..446 -| | | | | | | | | | | | | | ExpressionAtom 443..444 -| | | | | | | | | | | | | | | Identifier 443..444 -| | | | | | | | | | | | | | | | Identifier 443..444 "i" -| | | | | | | | | | | | | | Add 444..445 -| | | | | | | | | | | | | | | Add 444..445 "+" -| | | | | | | | | | | | | | ExpressionAtom 445..446 -| | | | | | | | | | | | | | | Number 445..446 -| | | | | | | | | | | | | | | | Number 445..446 "1" -| | | | | | | | | | | | RBracket 446..447 -| | | | | | | | | | | | | RBracket 446..447 "]" -| | | | | | | | | | | Dot 447..448 -| | | | | | | | | | | | Dot 447..448 "." -| | | | | | | | | | | Identifier 448..451 -| | | | | | | | | | | | Identifier 448..451 "in2" -| | | | | | | | | | WhiteSpace 451..452 -| | | | | | | | | | | WhiteSpace 451..452 " " -| | | | | | | | | RAssignConstraintSignal 452..455 -| | | | | | | | | | RAssignConstraintSignal 452..455 "<==" -| | | | | | | | | WhiteSpace 455..456 -| | | | | | | | | | WhiteSpace 455..456 " " -| | | | | | | | | Expression 456..463 -| | | | | | | | | | ArrayQuery 456..463 -| | | | | | | | | | | ExpressionAtom 456..458 -| | | | | | | | | | | | Identifier 456..458 -| | | | | | | | | | | | | Identifier 456..458 "in" -| | | | | | | | | | | LBracket 458..459 -| | | | | | | | | | | | LBracket 458..459 "[" -| | | | | | | | | | | Expression 459..462 -| | | | | | | | | | | | Add 459..462 -| | | | | | | | | | | | | ExpressionAtom 459..460 -| | | | | | | | | | | | | | Identifier 459..460 -| | | | | | | | | | | | | | | Identifier 459..460 "i" -| | | | | | | | | | | | | Add 460..461 -| | | | | | | | | | | | | | Add 460..461 "+" -| | | | | | | | | | | | | ExpressionAtom 461..462 -| | | | | | | | | | | | | | Number 461..462 -| | | | | | | | | | | | | | | Number 461..462 "2" -| | | | | | | | | | | RBracket 462..463 -| | | | | | | | | | | | RBracket 462..463 "]" -| | | | | | | | Semicolon 463..464 -| | | | | | | | | Semicolon 463..464 ";" -| | | | | | | EndLine 464..466 -| | | | | | | | EndLine 464..466 "\r\n" -| | | | | | | EndLine 466..468 -| | | | | | | | EndLine 466..468 "\r\n" -| | | | | | | WhiteSpace 468..480 -| | | | | | | | WhiteSpace 468..480 " " -| | | | | | RCurly 480..481 -| | | | | | | RCurly 480..481 "}" +| | ForLoop 343..481 +| | | ForKw 343..346 +| | | | ForKw 343..346 "for" +| | | LParen 346..347 +| | | | LParen 346..347 "(" +| | | VarDecl 347..356 +| | | | VarKw 347..350 +| | | | | VarKw 347..350 "var" +| | | | WhiteSpace 350..351 +| | | | | WhiteSpace 350..351 " " +| | | | VarIdentifier 351..353 +| | | | | Identifier 351..352 +| | | | | | Identifier 351..352 "i" +| | | | | WhiteSpace 352..353 +| | | | | | WhiteSpace 352..353 " " +| | | | Assign 353..354 +| | | | | Assign 353..354 "=" +| | | | WhiteSpace 354..355 +| | | | | WhiteSpace 354..355 " " +| | | | Expression 355..356 +| | | | | ExpressionAtom 355..356 +| | | | | | Number 355..356 +| | | | | | | Number 355..356 "0" +| | | Semicolon 356..357 +| | | | Semicolon 356..357 ";" +| | | WhiteSpace 357..358 +| | | | WhiteSpace 357..358 " " +| | | Expression 358..365 +| | | | LessThan 358..365 +| | | | | ExpressionAtom 358..359 +| | | | | | Identifier 358..359 +| | | | | | | Identifier 358..359 "i" +| | | | | WhiteSpace 359..360 +| | | | | | WhiteSpace 359..360 " " +| | | | | LessThan 360..361 +| | | | | | LessThan 360..361 "<" +| | | | | WhiteSpace 361..362 +| | | | | | WhiteSpace 361..362 " " +| | | | | Sub 362..365 +| | | | | | ExpressionAtom 362..363 +| | | | | | | Identifier 362..363 +| | | | | | | | Identifier 362..363 "N" +| | | | | | Sub 363..364 +| | | | | | | Sub 363..364 "-" +| | | | | | ExpressionAtom 364..365 +| | | | | | | Number 364..365 +| | | | | | | | Number 364..365 "2" +| | | Semicolon 365..366 +| | | | Semicolon 365..366 ";" +| | | WhiteSpace 366..367 +| | | | WhiteSpace 366..367 " " +| | | AssignStatement 367..370 +| | | | Expression 367..370 +| | | | | UnitInc 367..370 +| | | | | | ExpressionAtom 367..368 +| | | | | | | Identifier 367..368 +| | | | | | | | Identifier 367..368 "i" +| | | | | | UnitInc 368..370 +| | | | | | | UnitInc 368..370 "++" +| | | RParen 370..371 +| | | | RParen 370..371 ")" +| | | Block 371..481 +| | | | LCurly 371..372 +| | | | | LCurly 371..372 "{" +| | | | EndLine 372..374 +| | | | | EndLine 372..374 "\r\n" +| | | | WhiteSpace 374..390 +| | | | | WhiteSpace 374..390 " " +| | | | StatementList 390..480 +| | | | | AssignStatement 390..419 +| | | | | | Expression 390..404 +| | | | | | | ComponentCall 390..403 +| | | | | | | | ArrayQuery 390..399 +| | | | | | | | | ExpressionAtom 390..394 +| | | | | | | | | | Identifier 390..394 +| | | | | | | | | | | Identifier 390..394 "comp" +| | | | | | | | | LBracket 394..395 +| | | | | | | | | | LBracket 394..395 "[" +| | | | | | | | | Expression 395..398 +| | | | | | | | | | Add 395..398 +| | | | | | | | | | | ExpressionAtom 395..396 +| | | | | | | | | | | | Identifier 395..396 +| | | | | | | | | | | | | Identifier 395..396 "i" +| | | | | | | | | | | Add 396..397 +| | | | | | | | | | | | Add 396..397 "+" +| | | | | | | | | | | ExpressionAtom 397..398 +| | | | | | | | | | | | Number 397..398 +| | | | | | | | | | | | | Number 397..398 "1" +| | | | | | | | | RBracket 398..399 +| | | | | | | | | | RBracket 398..399 "]" +| | | | | | | | Dot 399..400 +| | | | | | | | | Dot 399..400 "." +| | | | | | | | Identifier 400..403 +| | | | | | | | | Identifier 400..403 "in1" +| | | | | | | WhiteSpace 403..404 +| | | | | | | | WhiteSpace 403..404 " " +| | | | | | RAssignConstraintSignal 404..407 +| | | | | | | RAssignConstraintSignal 404..407 "<==" +| | | | | | WhiteSpace 407..408 +| | | | | | | WhiteSpace 407..408 " " +| | | | | | Expression 408..419 +| | | | | | | ComponentCall 408..419 +| | | | | | | | ArrayQuery 408..415 +| | | | | | | | | ExpressionAtom 408..412 +| | | | | | | | | | Identifier 408..412 +| | | | | | | | | | | Identifier 408..412 "comp" +| | | | | | | | | LBracket 412..413 +| | | | | | | | | | LBracket 412..413 "[" +| | | | | | | | | Expression 413..414 +| | | | | | | | | | ExpressionAtom 413..414 +| | | | | | | | | | | Identifier 413..414 +| | | | | | | | | | | | Identifier 413..414 "i" +| | | | | | | | | RBracket 414..415 +| | | | | | | | | | RBracket 414..415 "]" +| | | | | | | | Dot 415..416 +| | | | | | | | | Dot 415..416 "." +| | | | | | | | Identifier 416..419 +| | | | | | | | | Identifier 416..419 "out" +| | | | | Semicolon 419..420 +| | | | | | Semicolon 419..420 ";" +| | | | | EndLine 420..422 +| | | | | | EndLine 420..422 "\r\n" +| | | | | WhiteSpace 422..438 +| | | | | | WhiteSpace 422..438 " " +| | | | | AssignStatement 438..463 +| | | | | | Expression 438..452 +| | | | | | | ComponentCall 438..451 +| | | | | | | | ArrayQuery 438..447 +| | | | | | | | | ExpressionAtom 438..442 +| | | | | | | | | | Identifier 438..442 +| | | | | | | | | | | Identifier 438..442 "comp" +| | | | | | | | | LBracket 442..443 +| | | | | | | | | | LBracket 442..443 "[" +| | | | | | | | | Expression 443..446 +| | | | | | | | | | Add 443..446 +| | | | | | | | | | | ExpressionAtom 443..444 +| | | | | | | | | | | | Identifier 443..444 +| | | | | | | | | | | | | Identifier 443..444 "i" +| | | | | | | | | | | Add 444..445 +| | | | | | | | | | | | Add 444..445 "+" +| | | | | | | | | | | ExpressionAtom 445..446 +| | | | | | | | | | | | Number 445..446 +| | | | | | | | | | | | | Number 445..446 "1" +| | | | | | | | | RBracket 446..447 +| | | | | | | | | | RBracket 446..447 "]" +| | | | | | | | Dot 447..448 +| | | | | | | | | Dot 447..448 "." +| | | | | | | | Identifier 448..451 +| | | | | | | | | Identifier 448..451 "in2" +| | | | | | | WhiteSpace 451..452 +| | | | | | | | WhiteSpace 451..452 " " +| | | | | | RAssignConstraintSignal 452..455 +| | | | | | | RAssignConstraintSignal 452..455 "<==" +| | | | | | WhiteSpace 455..456 +| | | | | | | WhiteSpace 455..456 " " +| | | | | | Expression 456..463 +| | | | | | | ArrayQuery 456..463 +| | | | | | | | ExpressionAtom 456..458 +| | | | | | | | | Identifier 456..458 +| | | | | | | | | | Identifier 456..458 "in" +| | | | | | | | LBracket 458..459 +| | | | | | | | | LBracket 458..459 "[" +| | | | | | | | Expression 459..462 +| | | | | | | | | Add 459..462 +| | | | | | | | | | ExpressionAtom 459..460 +| | | | | | | | | | | Identifier 459..460 +| | | | | | | | | | | | Identifier 459..460 "i" +| | | | | | | | | | Add 460..461 +| | | | | | | | | | | Add 460..461 "+" +| | | | | | | | | | ExpressionAtom 461..462 +| | | | | | | | | | | Number 461..462 +| | | | | | | | | | | | Number 461..462 "2" +| | | | | | | | RBracket 462..463 +| | | | | | | | | RBracket 462..463 "]" +| | | | | Semicolon 463..464 +| | | | | | Semicolon 463..464 ";" +| | | | | EndLine 464..466 +| | | | | | EndLine 464..466 "\r\n" +| | | | | EndLine 466..468 +| | | | | | EndLine 466..468 "\r\n" +| | | | | WhiteSpace 468..480 +| | | | | | WhiteSpace 468..480 " " +| | | | RCurly 480..481 +| | | | | RCurly 480..481 "}" | | EndLine 481..483 | | | EndLine 481..483 "\r\n" | | WhiteSpace 483..495 | | | WhiteSpace 483..495 " " -| | Statement 495..517 -| | | AssignStatement 495..516 -| | | | Expression 495..499 -| | | | | ExpressionAtom 495..498 -| | | | | | Identifier 495..498 -| | | | | | | Identifier 495..498 "out" -| | | | | WhiteSpace 498..499 -| | | | | | WhiteSpace 498..499 " " -| | | | RAssignConstraintSignal 499..502 -| | | | | RAssignConstraintSignal 499..502 "<==" -| | | | WhiteSpace 502..503 -| | | | | WhiteSpace 502..503 " " -| | | | Expression 503..516 -| | | | | ComponentCall 503..516 -| | | | | | ArrayQuery 503..512 -| | | | | | | ExpressionAtom 503..507 -| | | | | | | | Identifier 503..507 -| | | | | | | | | Identifier 503..507 "comp" -| | | | | | | LBracket 507..508 -| | | | | | | | LBracket 507..508 "[" -| | | | | | | Expression 508..511 -| | | | | | | | Sub 508..511 -| | | | | | | | | ExpressionAtom 508..509 -| | | | | | | | | | Identifier 508..509 -| | | | | | | | | | | Identifier 508..509 "N" -| | | | | | | | | Sub 509..510 -| | | | | | | | | | Sub 509..510 "-" -| | | | | | | | | ExpressionAtom 510..511 -| | | | | | | | | | Number 510..511 -| | | | | | | | | | | Number 510..511 "2" -| | | | | | | RBracket 511..512 -| | | | | | | | RBracket 511..512 "]" -| | | | | | Dot 512..513 -| | | | | | | Dot 512..513 "." -| | | | | | Identifier 513..516 -| | | | | | | Identifier 513..516 "out" -| | | Semicolon 516..517 -| | | | Semicolon 516..517 ";" +| | AssignStatement 495..516 +| | | Expression 495..499 +| | | | ExpressionAtom 495..498 +| | | | | Identifier 495..498 +| | | | | | Identifier 495..498 "out" +| | | | WhiteSpace 498..499 +| | | | | WhiteSpace 498..499 " " +| | | RAssignConstraintSignal 499..502 +| | | | RAssignConstraintSignal 499..502 "<==" +| | | WhiteSpace 502..503 +| | | | WhiteSpace 502..503 " " +| | | Expression 503..516 +| | | | ComponentCall 503..516 +| | | | | ArrayQuery 503..512 +| | | | | | ExpressionAtom 503..507 +| | | | | | | Identifier 503..507 +| | | | | | | | Identifier 503..507 "comp" +| | | | | | LBracket 507..508 +| | | | | | | LBracket 507..508 "[" +| | | | | | Expression 508..511 +| | | | | | | Sub 508..511 +| | | | | | | | ExpressionAtom 508..509 +| | | | | | | | | Identifier 508..509 +| | | | | | | | | | Identifier 508..509 "N" +| | | | | | | | Sub 509..510 +| | | | | | | | | Sub 509..510 "-" +| | | | | | | | ExpressionAtom 510..511 +| | | | | | | | | Number 510..511 +| | | | | | | | | | Number 510..511 "2" +| | | | | | RBracket 511..512 +| | | | | | | RBracket 511..512 "]" +| | | | | Dot 512..513 +| | | | | | Dot 512..513 "." +| | | | | Identifier 513..516 +| | | | | | Identifier 513..516 "out" +| | Semicolon 516..517 +| | | Semicolon 516..517 ";" | | WhiteSpace 517..518 | | | WhiteSpace 517..518 " " | | EndLine 518..520 diff --git a/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__full_circom_program.circom.snap b/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__full_circom_program.circom.snap index 5344f45..93e945f 100644 --- a/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__full_circom_program.circom.snap +++ b/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__full_circom_program.circom.snap @@ -111,98 +111,93 @@ expression: "crate :: view_syntax :: view_ast(& syntax)" | | | | | EndLine 1658..1660 "\r\n" | | | | WhiteSpace 1660..1664 | | | | | WhiteSpace 1660..1664 " " -| | | | Statement 1664..1717 -| | | | | WhileLoop 1664..1717 -| | | | | | WhileKw 1664..1669 -| | | | | | | WhileKw 1664..1669 "while" -| | | | | | WhiteSpace 1669..1670 -| | | | | | | WhiteSpace 1669..1670 " " -| | | | | | LParen 1670..1671 -| | | | | | | LParen 1670..1671 "(" -| | | | | | Expression 1671..1676 -| | | | | | | LessThan 1671..1676 -| | | | | | | | Sub 1671..1674 -| | | | | | | | | ExpressionAtom 1671..1672 -| | | | | | | | | | Identifier 1671..1672 -| | | | | | | | | | | Identifier 1671..1672 "n" -| | | | | | | | | Sub 1672..1673 -| | | | | | | | | | Sub 1672..1673 "-" -| | | | | | | | | ExpressionAtom 1673..1674 -| | | | | | | | | | Number 1673..1674 -| | | | | | | | | | | Number 1673..1674 "1" -| | | | | | | | LessThan 1674..1675 -| | | | | | | | | LessThan 1674..1675 "<" -| | | | | | | | ExpressionAtom 1675..1676 -| | | | | | | | | Identifier 1675..1676 -| | | | | | | | | | Identifier 1675..1676 "a" -| | | | | | RParen 1676..1677 -| | | | | | | RParen 1676..1677 ")" -| | | | | | WhiteSpace 1677..1678 -| | | | | | | WhiteSpace 1677..1678 " " -| | | | | | Statement 1678..1717 -| | | | | | | Block 1678..1717 -| | | | | | | | LCurly 1678..1679 -| | | | | | | | | LCurly 1678..1679 "{" -| | | | | | | | EndLine 1679..1681 -| | | | | | | | | EndLine 1679..1681 "\r\n" -| | | | | | | | WhiteSpace 1681..1689 -| | | | | | | | | WhiteSpace 1681..1689 " " -| | | | | | | | StatementList 1689..1716 -| | | | | | | | | Statement 1689..1693 -| | | | | | | | | | AssignStatement 1689..1692 -| | | | | | | | | | | Expression 1689..1692 -| | | | | | | | | | | | Expression 1689..1692 -| | | | | | | | | | | | | ExpressionAtom 1689..1690 -| | | | | | | | | | | | | | Identifier 1689..1690 -| | | | | | | | | | | | | | | Identifier 1689..1690 "r" -| | | | | | | | | | | | | UnitInc 1690..1692 -| | | | | | | | | | | | | | UnitInc 1690..1692 "++" -| | | | | | | | | | Semicolon 1692..1693 -| | | | | | | | | | | Semicolon 1692..1693 ";" -| | | | | | | | | EndLine 1693..1695 -| | | | | | | | | | EndLine 1693..1695 "\r\n" -| | | | | | | | | WhiteSpace 1695..1703 -| | | | | | | | | | WhiteSpace 1695..1703 " " -| | | | | | | | | Statement 1703..1710 -| | | | | | | | | | AssignStatement 1703..1709 -| | | | | | | | | | | Expression 1703..1705 -| | | | | | | | | | | | ExpressionAtom 1703..1704 -| | | | | | | | | | | | | Identifier 1703..1704 -| | | | | | | | | | | | | | Identifier 1703..1704 "n" -| | | | | | | | | | | | WhiteSpace 1704..1705 -| | | | | | | | | | | | | WhiteSpace 1704..1705 " " -| | | | | | | | | | | MulAssign 1705..1707 -| | | | | | | | | | | | MulAssign 1705..1707 "*=" -| | | | | | | | | | | WhiteSpace 1707..1708 -| | | | | | | | | | | | WhiteSpace 1707..1708 " " -| | | | | | | | | | | Expression 1708..1709 -| | | | | | | | | | | | ExpressionAtom 1708..1709 -| | | | | | | | | | | | | Number 1708..1709 -| | | | | | | | | | | | | | Number 1708..1709 "2" -| | | | | | | | | | Semicolon 1709..1710 -| | | | | | | | | | | Semicolon 1709..1710 ";" -| | | | | | | | | EndLine 1710..1712 -| | | | | | | | | | EndLine 1710..1712 "\r\n" -| | | | | | | | | WhiteSpace 1712..1716 -| | | | | | | | | | WhiteSpace 1712..1716 " " -| | | | | | | | RCurly 1716..1717 -| | | | | | | | | RCurly 1716..1717 "}" +| | | | WhileLoop 1664..1717 +| | | | | WhileKw 1664..1669 +| | | | | | WhileKw 1664..1669 "while" +| | | | | WhiteSpace 1669..1670 +| | | | | | WhiteSpace 1669..1670 " " +| | | | | LParen 1670..1671 +| | | | | | LParen 1670..1671 "(" +| | | | | Expression 1671..1676 +| | | | | | LessThan 1671..1676 +| | | | | | | Sub 1671..1674 +| | | | | | | | ExpressionAtom 1671..1672 +| | | | | | | | | Identifier 1671..1672 +| | | | | | | | | | Identifier 1671..1672 "n" +| | | | | | | | Sub 1672..1673 +| | | | | | | | | Sub 1672..1673 "-" +| | | | | | | | ExpressionAtom 1673..1674 +| | | | | | | | | Number 1673..1674 +| | | | | | | | | | Number 1673..1674 "1" +| | | | | | | LessThan 1674..1675 +| | | | | | | | LessThan 1674..1675 "<" +| | | | | | | ExpressionAtom 1675..1676 +| | | | | | | | Identifier 1675..1676 +| | | | | | | | | Identifier 1675..1676 "a" +| | | | | RParen 1676..1677 +| | | | | | RParen 1676..1677 ")" +| | | | | WhiteSpace 1677..1678 +| | | | | | WhiteSpace 1677..1678 " " +| | | | | Block 1678..1717 +| | | | | | LCurly 1678..1679 +| | | | | | | LCurly 1678..1679 "{" +| | | | | | EndLine 1679..1681 +| | | | | | | EndLine 1679..1681 "\r\n" +| | | | | | WhiteSpace 1681..1689 +| | | | | | | WhiteSpace 1681..1689 " " +| | | | | | StatementList 1689..1716 +| | | | | | | AssignStatement 1689..1692 +| | | | | | | | Expression 1689..1692 +| | | | | | | | | UnitInc 1689..1692 +| | | | | | | | | | ExpressionAtom 1689..1690 +| | | | | | | | | | | Identifier 1689..1690 +| | | | | | | | | | | | Identifier 1689..1690 "r" +| | | | | | | | | | UnitInc 1690..1692 +| | | | | | | | | | | UnitInc 1690..1692 "++" +| | | | | | | Semicolon 1692..1693 +| | | | | | | | Semicolon 1692..1693 ";" +| | | | | | | EndLine 1693..1695 +| | | | | | | | EndLine 1693..1695 "\r\n" +| | | | | | | WhiteSpace 1695..1703 +| | | | | | | | WhiteSpace 1695..1703 " " +| | | | | | | AssignStatement 1703..1709 +| | | | | | | | Expression 1703..1705 +| | | | | | | | | ExpressionAtom 1703..1704 +| | | | | | | | | | Identifier 1703..1704 +| | | | | | | | | | | Identifier 1703..1704 "n" +| | | | | | | | | WhiteSpace 1704..1705 +| | | | | | | | | | WhiteSpace 1704..1705 " " +| | | | | | | | MulAssign 1705..1707 +| | | | | | | | | MulAssign 1705..1707 "*=" +| | | | | | | | WhiteSpace 1707..1708 +| | | | | | | | | WhiteSpace 1707..1708 " " +| | | | | | | | Expression 1708..1709 +| | | | | | | | | ExpressionAtom 1708..1709 +| | | | | | | | | | Number 1708..1709 +| | | | | | | | | | | Number 1708..1709 "2" +| | | | | | | Semicolon 1709..1710 +| | | | | | | | Semicolon 1709..1710 ";" +| | | | | | | EndLine 1710..1712 +| | | | | | | | EndLine 1710..1712 "\r\n" +| | | | | | | WhiteSpace 1712..1716 +| | | | | | | | WhiteSpace 1712..1716 " " +| | | | | | RCurly 1716..1717 +| | | | | | | RCurly 1716..1717 "}" | | | | EndLine 1717..1719 | | | | | EndLine 1717..1719 "\r\n" | | | | WhiteSpace 1719..1723 | | | | | WhiteSpace 1719..1723 " " -| | | | Statement 1723..1732 -| | | | | ReturnStatement 1723..1731 -| | | | | | ReturnKw 1723..1729 -| | | | | | | ReturnKw 1723..1729 "return" -| | | | | | WhiteSpace 1729..1730 -| | | | | | | WhiteSpace 1729..1730 " " -| | | | | | Expression 1730..1731 -| | | | | | | ExpressionAtom 1730..1731 -| | | | | | | | Identifier 1730..1731 -| | | | | | | | | Identifier 1730..1731 "r" -| | | | | Semicolon 1731..1732 -| | | | | | Semicolon 1731..1732 ";" +| | | | ReturnStatement 1723..1731 +| | | | | ReturnKw 1723..1729 +| | | | | | ReturnKw 1723..1729 "return" +| | | | | WhiteSpace 1729..1730 +| | | | | | WhiteSpace 1729..1730 " " +| | | | | Expression 1730..1731 +| | | | | | ExpressionAtom 1730..1731 +| | | | | | | Identifier 1730..1731 +| | | | | | | | Identifier 1730..1731 "r" +| | | | Semicolon 1731..1732 +| | | | | Semicolon 1731..1732 ";" | | | | EndLine 1732..1734 | | | | | EndLine 1732..1734 "\r\n" | | | RCurly 1734..1735 @@ -462,568 +457,553 @@ expression: "crate :: view_syntax :: view_ast(& syntax)" | | | | | EndLine 1946..1948 "\r\n" | | | | WhiteSpace 1948..1952 | | | | | WhiteSpace 1948..1952 " " -| | | | Statement 1952..1959 -| | | | | AssignStatement 1952..1958 -| | | | | | Expression 1952..1955 -| | | | | | | ExpressionAtom 1952..1954 -| | | | | | | | Identifier 1952..1954 -| | | | | | | | | Identifier 1952..1954 "e2" -| | | | | | | WhiteSpace 1954..1955 -| | | | | | | | WhiteSpace 1954..1955 " " -| | | | | | Assign 1955..1956 -| | | | | | | Assign 1955..1956 "=" -| | | | | | WhiteSpace 1956..1957 -| | | | | | | WhiteSpace 1956..1957 " " -| | | | | | Expression 1957..1958 -| | | | | | | ExpressionAtom 1957..1958 -| | | | | | | | Number 1957..1958 -| | | | | | | | | Number 1957..1958 "1" -| | | | | Semicolon 1958..1959 -| | | | | | Semicolon 1958..1959 ";" +| | | | AssignStatement 1952..1958 +| | | | | Expression 1952..1955 +| | | | | | ExpressionAtom 1952..1954 +| | | | | | | Identifier 1952..1954 +| | | | | | | | Identifier 1952..1954 "e2" +| | | | | | WhiteSpace 1954..1955 +| | | | | | | WhiteSpace 1954..1955 " " +| | | | | Assign 1955..1956 +| | | | | | Assign 1955..1956 "=" +| | | | | WhiteSpace 1956..1957 +| | | | | | WhiteSpace 1956..1957 " " +| | | | | Expression 1957..1958 +| | | | | | ExpressionAtom 1957..1958 +| | | | | | | Number 1957..1958 +| | | | | | | | Number 1957..1958 "1" +| | | | Semicolon 1958..1959 +| | | | | Semicolon 1958..1959 ";" | | | | EndLine 1959..1961 | | | | | EndLine 1959..1961 "\r\n" | | | | WhiteSpace 1961..1965 | | | | | WhiteSpace 1961..1965 " " -| | | | Statement 1965..2422 -| | | | | ForLoop 1965..2422 -| | | | | | ForKw 1965..1968 -| | | | | | | ForKw 1965..1968 "for" -| | | | | | WhiteSpace 1968..1969 -| | | | | | | WhiteSpace 1968..1969 " " -| | | | | | LParen 1969..1970 -| | | | | | | LParen 1969..1970 "(" -| | | | | | AssignStatement 1970..1973 -| | | | | | | Expression 1970..1971 -| | | | | | | | ExpressionAtom 1970..1971 -| | | | | | | | | Identifier 1970..1971 -| | | | | | | | | | Identifier 1970..1971 "k" -| | | | | | | Assign 1971..1972 -| | | | | | | | Assign 1971..1972 "=" -| | | | | | | Expression 1972..1973 -| | | | | | | | ExpressionAtom 1972..1973 -| | | | | | | | | Number 1972..1973 -| | | | | | | | | | Number 1972..1973 "0" -| | | | | | Semicolon 1973..1974 -| | | | | | | Semicolon 1973..1974 ";" -| | | | | | WhiteSpace 1974..1975 -| | | | | | | WhiteSpace 1974..1975 " " -| | | | | | Expression 1975..1978 -| | | | | | | LessThan 1975..1978 -| | | | | | | | ExpressionAtom 1975..1976 -| | | | | | | | | Identifier 1975..1976 -| | | | | | | | | | Identifier 1975..1976 "k" -| | | | | | | | LessThan 1976..1977 -| | | | | | | | | LessThan 1976..1977 "<" -| | | | | | | | ExpressionAtom 1977..1978 -| | | | | | | | | Identifier 1977..1978 -| | | | | | | | | | Identifier 1977..1978 "n" -| | | | | | Semicolon 1978..1979 -| | | | | | | Semicolon 1978..1979 ";" -| | | | | | WhiteSpace 1979..1980 -| | | | | | | WhiteSpace 1979..1980 " " -| | | | | | AssignStatement 1980..1983 -| | | | | | | Expression 1980..1983 -| | | | | | | | Expression 1980..1983 -| | | | | | | | | ExpressionAtom 1980..1981 -| | | | | | | | | | Identifier 1980..1981 -| | | | | | | | | | | Identifier 1980..1981 "k" -| | | | | | | | | UnitInc 1981..1983 -| | | | | | | | | | UnitInc 1981..1983 "++" -| | | | | | RParen 1983..1984 -| | | | | | | RParen 1983..1984 ")" -| | | | | | WhiteSpace 1984..1985 -| | | | | | | WhiteSpace 1984..1985 " " -| | | | | | Statement 1985..2422 -| | | | | | | Block 1985..2422 -| | | | | | | | LCurly 1985..1986 -| | | | | | | | | LCurly 1985..1986 "{" -| | | | | | | | EndLine 1986..1988 -| | | | | | | | | EndLine 1986..1988 "\r\n" -| | | | | | | | WhiteSpace 1988..1996 -| | | | | | | | | WhiteSpace 1988..1996 " " -| | | | | | | | StatementList 1996..2421 -| | | | | | | | | Statement 1996..2065 -| | | | | | | | | | ForLoop 1996..2065 -| | | | | | | | | | | ForKw 1996..1999 -| | | | | | | | | | | | ForKw 1996..1999 "for" -| | | | | | | | | | | WhiteSpace 1999..2000 -| | | | | | | | | | | | WhiteSpace 1999..2000 " " -| | | | | | | | | | | LParen 2000..2001 -| | | | | | | | | | | | LParen 2000..2001 "(" -| | | | | | | | | | | AssignStatement 2001..2004 -| | | | | | | | | | | | Expression 2001..2002 -| | | | | | | | | | | | | ExpressionAtom 2001..2002 -| | | | | | | | | | | | | | Identifier 2001..2002 -| | | | | | | | | | | | | | | Identifier 2001..2002 "j" -| | | | | | | | | | | | Assign 2002..2003 -| | | | | | | | | | | | | Assign 2002..2003 "=" -| | | | | | | | | | | | Expression 2003..2004 -| | | | | | | | | | | | | ExpressionAtom 2003..2004 -| | | | | | | | | | | | | | Number 2003..2004 -| | | | | | | | | | | | | | | Number 2003..2004 "0" -| | | | | | | | | | | Semicolon 2004..2005 -| | | | | | | | | | | | Semicolon 2004..2005 ";" -| | | | | | | | | | | WhiteSpace 2005..2006 -| | | | | | | | | | | | WhiteSpace 2005..2006 " " -| | | | | | | | | | | Expression 2006..2011 -| | | | | | | | | | | | LessThan 2006..2011 -| | | | | | | | | | | | | ExpressionAtom 2006..2007 -| | | | | | | | | | | | | | Identifier 2006..2007 -| | | | | | | | | | | | | | | Identifier 2006..2007 "j" -| | | | | | | | | | | | | LessThan 2007..2008 -| | | | | | | | | | | | | | LessThan 2007..2008 "<" -| | | | | | | | | | | | | ExpressionAtom 2008..2011 -| | | | | | | | | | | | | | Identifier 2008..2011 -| | | | | | | | | | | | | | | Identifier 2008..2011 "ops" -| | | | | | | | | | | Semicolon 2011..2012 -| | | | | | | | | | | | Semicolon 2011..2012 ";" -| | | | | | | | | | | WhiteSpace 2012..2013 -| | | | | | | | | | | | WhiteSpace 2012..2013 " " -| | | | | | | | | | | AssignStatement 2013..2016 -| | | | | | | | | | | | Expression 2013..2016 -| | | | | | | | | | | | | Expression 2013..2016 -| | | | | | | | | | | | | | ExpressionAtom 2013..2014 -| | | | | | | | | | | | | | | Identifier 2013..2014 -| | | | | | | | | | | | | | | | Identifier 2013..2014 "j" -| | | | | | | | | | | | | | UnitInc 2014..2016 -| | | | | | | | | | | | | | | UnitInc 2014..2016 "++" -| | | | | | | | | | | RParen 2016..2017 -| | | | | | | | | | | | RParen 2016..2017 ")" -| | | | | | | | | | | WhiteSpace 2017..2018 -| | | | | | | | | | | | WhiteSpace 2017..2018 " " -| | | | | | | | | | | Statement 2018..2065 -| | | | | | | | | | | | Block 2018..2065 -| | | | | | | | | | | | | LCurly 2018..2019 -| | | | | | | | | | | | | | LCurly 2018..2019 "{" -| | | | | | | | | | | | | EndLine 2019..2021 -| | | | | | | | | | | | | | EndLine 2019..2021 "\r\n" -| | | | | | | | | | | | | WhiteSpace 2021..2033 -| | | | | | | | | | | | | | WhiteSpace 2021..2033 " " -| | | | | | | | | | | | | StatementList 2033..2064 -| | | | | | | | | | | | | | Statement 2033..2054 -| | | | | | | | | | | | | | | AssignStatement 2033..2053 -| | | | | | | | | | | | | | | | Expression 2033..2037 -| | | | | | | | | | | | | | | | | ExpressionAtom 2033..2036 -| | | | | | | | | | | | | | | | | | Identifier 2033..2036 -| | | | | | | | | | | | | | | | | | | Identifier 2033..2036 "lin" -| | | | | | | | | | | | | | | | | WhiteSpace 2036..2037 -| | | | | | | | | | | | | | | | | | WhiteSpace 2036..2037 " " -| | | | | | | | | | | | | | | | AddAssign 2037..2039 -| | | | | | | | | | | | | | | | | AddAssign 2037..2039 "+=" -| | | | | | | | | | | | | | | | WhiteSpace 2039..2040 -| | | | | | | | | | | | | | | | | WhiteSpace 2039..2040 " " -| | | | | | | | | | | | | | | | Expression 2040..2053 -| | | | | | | | | | | | | | | | | Mul 2040..2053 -| | | | | | | | | | | | | | | | | | ArrayQuery 2040..2048 -| | | | | | | | | | | | | | | | | | | ArrayQuery 2040..2045 -| | | | | | | | | | | | | | | | | | | | ExpressionAtom 2040..2042 -| | | | | | | | | | | | | | | | | | | | | Identifier 2040..2042 -| | | | | | | | | | | | | | | | | | | | | | Identifier 2040..2042 "in" -| | | | | | | | | | | | | | | | | | | | LBracket 2042..2043 -| | | | | | | | | | | | | | | | | | | | | LBracket 2042..2043 "[" -| | | | | | | | | | | | | | | | | | | | Expression 2043..2044 -| | | | | | | | | | | | | | | | | | | | | ExpressionAtom 2043..2044 -| | | | | | | | | | | | | | | | | | | | | | Identifier 2043..2044 -| | | | | | | | | | | | | | | | | | | | | | | Identifier 2043..2044 "j" -| | | | | | | | | | | | | | | | | | | | RBracket 2044..2045 -| | | | | | | | | | | | | | | | | | | | | RBracket 2044..2045 "]" -| | | | | | | | | | | | | | | | | | | LBracket 2045..2046 -| | | | | | | | | | | | | | | | | | | | LBracket 2045..2046 "[" -| | | | | | | | | | | | | | | | | | | Expression 2046..2047 -| | | | | | | | | | | | | | | | | | | | ExpressionAtom 2046..2047 -| | | | | | | | | | | | | | | | | | | | | Identifier 2046..2047 -| | | | | | | | | | | | | | | | | | | | | | Identifier 2046..2047 "k" -| | | | | | | | | | | | | | | | | | | RBracket 2047..2048 -| | | | | | | | | | | | | | | | | | | | RBracket 2047..2048 "]" -| | | | | | | | | | | | | | | | | | WhiteSpace 2048..2049 -| | | | | | | | | | | | | | | | | | | WhiteSpace 2048..2049 " " -| | | | | | | | | | | | | | | | | | Mul 2049..2050 -| | | | | | | | | | | | | | | | | | | Mul 2049..2050 "*" -| | | | | | | | | | | | | | | | | | WhiteSpace 2050..2051 -| | | | | | | | | | | | | | | | | | | WhiteSpace 2050..2051 " " -| | | | | | | | | | | | | | | | | | ExpressionAtom 2051..2053 -| | | | | | | | | | | | | | | | | | | Identifier 2051..2053 -| | | | | | | | | | | | | | | | | | | | Identifier 2051..2053 "e2" -| | | | | | | | | | | | | | | Semicolon 2053..2054 -| | | | | | | | | | | | | | | | Semicolon 2053..2054 ";" -| | | | | | | | | | | | | | EndLine 2054..2056 -| | | | | | | | | | | | | | | EndLine 2054..2056 "\r\n" -| | | | | | | | | | | | | | WhiteSpace 2056..2064 -| | | | | | | | | | | | | | | WhiteSpace 2056..2064 " " -| | | | | | | | | | | | | RCurly 2064..2065 -| | | | | | | | | | | | | | RCurly 2064..2065 "}" -| | | | | | | | | EndLine 2065..2067 -| | | | | | | | | | EndLine 2065..2067 "\r\n" -| | | | | | | | | WhiteSpace 2067..2075 -| | | | | | | | | | WhiteSpace 2067..2075 " " -| | | | | | | | | Statement 2075..2088 -| | | | | | | | | | AssignStatement 2075..2087 -| | | | | | | | | | | Expression 2075..2078 -| | | | | | | | | | | | ExpressionAtom 2075..2077 -| | | | | | | | | | | | | Identifier 2075..2077 -| | | | | | | | | | | | | | Identifier 2075..2077 "e2" -| | | | | | | | | | | | WhiteSpace 2077..2078 -| | | | | | | | | | | | | WhiteSpace 2077..2078 " " -| | | | | | | | | | | Assign 2078..2079 -| | | | | | | | | | | | Assign 2078..2079 "=" -| | | | | | | | | | | WhiteSpace 2079..2080 -| | | | | | | | | | | | WhiteSpace 2079..2080 " " -| | | | | | | | | | | Expression 2080..2087 -| | | | | | | | | | | | Add 2080..2087 -| | | | | | | | | | | | | ExpressionAtom 2080..2082 -| | | | | | | | | | | | | | Identifier 2080..2082 -| | | | | | | | | | | | | | | Identifier 2080..2082 "e2" -| | | | | | | | | | | | | WhiteSpace 2082..2083 -| | | | | | | | | | | | | | WhiteSpace 2082..2083 " " -| | | | | | | | | | | | | Add 2083..2084 -| | | | | | | | | | | | | | Add 2083..2084 "+" -| | | | | | | | | | | | | WhiteSpace 2084..2085 -| | | | | | | | | | | | | | WhiteSpace 2084..2085 " " -| | | | | | | | | | | | | ExpressionAtom 2085..2087 -| | | | | | | | | | | | | | Identifier 2085..2087 -| | | | | | | | | | | | | | | Identifier 2085..2087 "e2" -| | | | | | | | | | Semicolon 2087..2088 -| | | | | | | | | | | Semicolon 2087..2088 ";" -| | | | | | | | | EndLine 2088..2090 -| | | | | | | | | | EndLine 2088..2090 "\r\n" -| | | | | | | | | WhiteSpace 2090..2094 -| | | | | | | | | | WhiteSpace 2090..2094 " " -| | | | | | | | | EndLine 2094..2096 -| | | | | | | | | | EndLine 2094..2096 "\r\n" -| | | | | | | | | WhiteSpace 2096..2104 -| | | | | | | | | | WhiteSpace 2096..2104 " " -| | | | | | | | | Statement 2104..2111 -| | | | | | | | | | AssignStatement 2104..2110 -| | | | | | | | | | | Expression 2104..2107 -| | | | | | | | | | | | ExpressionAtom 2104..2106 -| | | | | | | | | | | | | Identifier 2104..2106 -| | | | | | | | | | | | | | Identifier 2104..2106 "e2" -| | | | | | | | | | | | WhiteSpace 2106..2107 -| | | | | | | | | | | | | WhiteSpace 2106..2107 " " -| | | | | | | | | | | Assign 2107..2108 -| | | | | | | | | | | | Assign 2107..2108 "=" -| | | | | | | | | | | WhiteSpace 2108..2109 -| | | | | | | | | | | | WhiteSpace 2108..2109 " " -| | | | | | | | | | | Expression 2109..2110 -| | | | | | | | | | | | ExpressionAtom 2109..2110 -| | | | | | | | | | | | | Number 2109..2110 -| | | | | | | | | | | | | | Number 2109..2110 "1" -| | | | | | | | | | Semicolon 2110..2111 -| | | | | | | | | | | Semicolon 2110..2111 ";" -| | | | | | | | | EndLine 2111..2113 -| | | | | | | | | | EndLine 2111..2113 "\r\n" -| | | | | | | | | WhiteSpace 2113..2121 -| | | | | | | | | | WhiteSpace 2113..2121 " " -| | | | | | | | | Statement 2121..2352 -| | | | | | | | | | ForLoop 2121..2352 -| | | | | | | | | | | ForKw 2121..2124 -| | | | | | | | | | | | ForKw 2121..2124 "for" -| | | | | | | | | | | WhiteSpace 2124..2125 -| | | | | | | | | | | | WhiteSpace 2124..2125 " " -| | | | | | | | | | | LParen 2125..2126 -| | | | | | | | | | | | LParen 2125..2126 "(" -| | | | | | | | | | | AssignStatement 2126..2129 -| | | | | | | | | | | | Expression 2126..2127 -| | | | | | | | | | | | | ExpressionAtom 2126..2127 -| | | | | | | | | | | | | | Identifier 2126..2127 -| | | | | | | | | | | | | | | Identifier 2126..2127 "k" -| | | | | | | | | | | | Assign 2127..2128 -| | | | | | | | | | | | | Assign 2127..2128 "=" -| | | | | | | | | | | | Expression 2128..2129 -| | | | | | | | | | | | | ExpressionAtom 2128..2129 -| | | | | | | | | | | | | | Number 2128..2129 -| | | | | | | | | | | | | | | Number 2128..2129 "0" -| | | | | | | | | | | Semicolon 2129..2130 -| | | | | | | | | | | | Semicolon 2129..2130 ";" -| | | | | | | | | | | WhiteSpace 2130..2131 -| | | | | | | | | | | | WhiteSpace 2130..2131 " " -| | | | | | | | | | | Expression 2131..2137 -| | | | | | | | | | | | LessThan 2131..2137 -| | | | | | | | | | | | | ExpressionAtom 2131..2132 -| | | | | | | | | | | | | | Identifier 2131..2132 -| | | | | | | | | | | | | | | Identifier 2131..2132 "k" -| | | | | | | | | | | | | LessThan 2132..2133 -| | | | | | | | | | | | | | LessThan 2132..2133 "<" -| | | | | | | | | | | | | ExpressionAtom 2133..2137 -| | | | | | | | | | | | | | Identifier 2133..2137 -| | | | | | | | | | | | | | | Identifier 2133..2137 "nout" -| | | | | | | | | | | Semicolon 2137..2138 -| | | | | | | | | | | | Semicolon 2137..2138 ";" -| | | | | | | | | | | WhiteSpace 2138..2139 -| | | | | | | | | | | | WhiteSpace 2138..2139 " " -| | | | | | | | | | | AssignStatement 2139..2142 -| | | | | | | | | | | | Expression 2139..2142 -| | | | | | | | | | | | | Expression 2139..2142 -| | | | | | | | | | | | | | ExpressionAtom 2139..2140 -| | | | | | | | | | | | | | | Identifier 2139..2140 -| | | | | | | | | | | | | | | | Identifier 2139..2140 "k" -| | | | | | | | | | | | | | UnitInc 2140..2142 -| | | | | | | | | | | | | | | UnitInc 2140..2142 "++" -| | | | | | | | | | | RParen 2142..2143 -| | | | | | | | | | | | RParen 2142..2143 ")" -| | | | | | | | | | | WhiteSpace 2143..2144 -| | | | | | | | | | | | WhiteSpace 2143..2144 " " -| | | | | | | | | | | Statement 2144..2352 -| | | | | | | | | | | | Block 2144..2352 -| | | | | | | | | | | | | LCurly 2144..2145 -| | | | | | | | | | | | | | LCurly 2144..2145 "{" -| | | | | | | | | | | | | EndLine 2145..2147 -| | | | | | | | | | | | | | EndLine 2145..2147 "\r\n" -| | | | | | | | | | | | | WhiteSpace 2147..2159 -| | | | | | | | | | | | | | WhiteSpace 2147..2159 " " -| | | | | | | | | | | | | StatementList 2159..2351 -| | | | | | | | | | | | | | Statement 2159..2185 -| | | | | | | | | | | | | | | AssignStatement 2159..2184 -| | | | | | | | | | | | | | | | Expression 2159..2166 -| | | | | | | | | | | | | | | | | ArrayQuery 2159..2165 -| | | | | | | | | | | | | | | | | | ExpressionAtom 2159..2162 -| | | | | | | | | | | | | | | | | | | Identifier 2159..2162 -| | | | | | | | | | | | | | | | | | | | Identifier 2159..2162 "out" -| | | | | | | | | | | | | | | | | | LBracket 2162..2163 -| | | | | | | | | | | | | | | | | | | LBracket 2162..2163 "[" -| | | | | | | | | | | | | | | | | | Expression 2163..2164 -| | | | | | | | | | | | | | | | | | | ExpressionAtom 2163..2164 -| | | | | | | | | | | | | | | | | | | | Identifier 2163..2164 -| | | | | | | | | | | | | | | | | | | | | Identifier 2163..2164 "k" -| | | | | | | | | | | | | | | | | | RBracket 2164..2165 -| | | | | | | | | | | | | | | | | | | RBracket 2164..2165 "]" -| | | | | | | | | | | | | | | | | WhiteSpace 2165..2166 -| | | | | | | | | | | | | | | | | | WhiteSpace 2165..2166 " " -| | | | | | | | | | | | | | | | RAssignSignal 2166..2169 -| | | | | | | | | | | | | | | | | RAssignSignal 2166..2169 "<--" -| | | | | | | | | | | | | | | | WhiteSpace 2169..2170 -| | | | | | | | | | | | | | | | | WhiteSpace 2169..2170 " " -| | | | | | | | | | | | | | | | Expression 2170..2184 -| | | | | | | | | | | | | | | | | BitAnd 2170..2184 -| | | | | | | | | | | | | | | | | | Expression 2170..2180 -| | | | | | | | | | | | | | | | | | | LParen 2170..2171 -| | | | | | | | | | | | | | | | | | | | LParen 2170..2171 "(" -| | | | | | | | | | | | | | | | | | | ShiftR 2171..2179 -| | | | | | | | | | | | | | | | | | | | ExpressionAtom 2171..2174 -| | | | | | | | | | | | | | | | | | | | | Identifier 2171..2174 -| | | | | | | | | | | | | | | | | | | | | | Identifier 2171..2174 "lin" -| | | | | | | | | | | | | | | | | | | | WhiteSpace 2174..2175 -| | | | | | | | | | | | | | | | | | | | | WhiteSpace 2174..2175 " " -| | | | | | | | | | | | | | | | | | | | ShiftR 2175..2177 -| | | | | | | | | | | | | | | | | | | | | ShiftR 2175..2177 ">>" -| | | | | | | | | | | | | | | | | | | | WhiteSpace 2177..2178 -| | | | | | | | | | | | | | | | | | | | | WhiteSpace 2177..2178 " " -| | | | | | | | | | | | | | | | | | | | ExpressionAtom 2178..2179 -| | | | | | | | | | | | | | | | | | | | | Identifier 2178..2179 -| | | | | | | | | | | | | | | | | | | | | | Identifier 2178..2179 "k" -| | | | | | | | | | | | | | | | | | | RParen 2179..2180 -| | | | | | | | | | | | | | | | | | | | RParen 2179..2180 ")" -| | | | | | | | | | | | | | | | | | WhiteSpace 2180..2181 -| | | | | | | | | | | | | | | | | | | WhiteSpace 2180..2181 " " -| | | | | | | | | | | | | | | | | | BitAnd 2181..2182 -| | | | | | | | | | | | | | | | | | | BitAnd 2181..2182 "&" -| | | | | | | | | | | | | | | | | | WhiteSpace 2182..2183 -| | | | | | | | | | | | | | | | | | | WhiteSpace 2182..2183 " " -| | | | | | | | | | | | | | | | | | ExpressionAtom 2183..2184 -| | | | | | | | | | | | | | | | | | | Number 2183..2184 -| | | | | | | | | | | | | | | | | | | | Number 2183..2184 "1" -| | | | | | | | | | | | | | | Semicolon 2184..2185 -| | | | | | | | | | | | | | | | Semicolon 2184..2185 ";" -| | | | | | | | | | | | | | EndLine 2185..2187 -| | | | | | | | | | | | | | | EndLine 2185..2187 "\r\n" -| | | | | | | | | | | | | | WhiteSpace 2187..2191 -| | | | | | | | | | | | | | | WhiteSpace 2187..2191 " " -| | | | | | | | | | | | | | EndLine 2191..2193 -| | | | | | | | | | | | | | | EndLine 2191..2193 "\r\n" -| | | | | | | | | | | | | | WhiteSpace 2193..2205 -| | | | | | | | | | | | | | | WhiteSpace 2193..2205 " " -| | | | | | | | | | | | | | CommentLine 2205..2228 -| | | | | | | | | | | | | | | CommentLine 2205..2228 "// Ensure out is binary" -| | | | | | | | | | | | | | EndLine 2228..2230 -| | | | | | | | | | | | | | | EndLine 2228..2230 "\r\n" -| | | | | | | | | | | | | | WhiteSpace 2230..2242 -| | | | | | | | | | | | | | | WhiteSpace 2230..2242 " " -| | | | | | | | | | | | | | Statement 2242..2270 -| | | | | | | | | | | | | | | AssignStatement 2242..2269 -| | | | | | | | | | | | | | | | Expression 2242..2264 -| | | | | | | | | | | | | | | | | Mul 2242..2264 -| | | | | | | | | | | | | | | | | | ArrayQuery 2242..2248 -| | | | | | | | | | | | | | | | | | | ExpressionAtom 2242..2245 -| | | | | | | | | | | | | | | | | | | | Identifier 2242..2245 -| | | | | | | | | | | | | | | | | | | | | Identifier 2242..2245 "out" -| | | | | | | | | | | | | | | | | | | LBracket 2245..2246 -| | | | | | | | | | | | | | | | | | | | LBracket 2245..2246 "[" -| | | | | | | | | | | | | | | | | | | Expression 2246..2247 -| | | | | | | | | | | | | | | | | | | | ExpressionAtom 2246..2247 -| | | | | | | | | | | | | | | | | | | | | Identifier 2246..2247 -| | | | | | | | | | | | | | | | | | | | | | Identifier 2246..2247 "k" -| | | | | | | | | | | | | | | | | | | RBracket 2247..2248 -| | | | | | | | | | | | | | | | | | | | RBracket 2247..2248 "]" -| | | | | | | | | | | | | | | | | | WhiteSpace 2248..2249 -| | | | | | | | | | | | | | | | | | | WhiteSpace 2248..2249 " " -| | | | | | | | | | | | | | | | | | Mul 2249..2250 -| | | | | | | | | | | | | | | | | | | Mul 2249..2250 "*" -| | | | | | | | | | | | | | | | | | WhiteSpace 2250..2251 -| | | | | | | | | | | | | | | | | | | WhiteSpace 2250..2251 " " -| | | | | | | | | | | | | | | | | | Expression 2251..2263 -| | | | | | | | | | | | | | | | | | | LParen 2251..2252 -| | | | | | | | | | | | | | | | | | | | LParen 2251..2252 "(" -| | | | | | | | | | | | | | | | | | | Sub 2252..2262 -| | | | | | | | | | | | | | | | | | | | ArrayQuery 2252..2258 -| | | | | | | | | | | | | | | | | | | | | ExpressionAtom 2252..2255 -| | | | | | | | | | | | | | | | | | | | | | Identifier 2252..2255 -| | | | | | | | | | | | | | | | | | | | | | | Identifier 2252..2255 "out" -| | | | | | | | | | | | | | | | | | | | | LBracket 2255..2256 -| | | | | | | | | | | | | | | | | | | | | | LBracket 2255..2256 "[" -| | | | | | | | | | | | | | | | | | | | | Expression 2256..2257 -| | | | | | | | | | | | | | | | | | | | | | ExpressionAtom 2256..2257 -| | | | | | | | | | | | | | | | | | | | | | | Identifier 2256..2257 -| | | | | | | | | | | | | | | | | | | | | | | | Identifier 2256..2257 "k" -| | | | | | | | | | | | | | | | | | | | | RBracket 2257..2258 -| | | | | | | | | | | | | | | | | | | | | | RBracket 2257..2258 "]" -| | | | | | | | | | | | | | | | | | | | WhiteSpace 2258..2259 -| | | | | | | | | | | | | | | | | | | | | WhiteSpace 2258..2259 " " -| | | | | | | | | | | | | | | | | | | | Sub 2259..2260 -| | | | | | | | | | | | | | | | | | | | | Sub 2259..2260 "-" -| | | | | | | | | | | | | | | | | | | | WhiteSpace 2260..2261 -| | | | | | | | | | | | | | | | | | | | | WhiteSpace 2260..2261 " " -| | | | | | | | | | | | | | | | | | | | ExpressionAtom 2261..2262 -| | | | | | | | | | | | | | | | | | | | | Number 2261..2262 -| | | | | | | | | | | | | | | | | | | | | | Number 2261..2262 "1" -| | | | | | | | | | | | | | | | | | | RParen 2262..2263 -| | | | | | | | | | | | | | | | | | | | RParen 2262..2263 ")" -| | | | | | | | | | | | | | | | | | WhiteSpace 2263..2264 -| | | | | | | | | | | | | | | | | | | WhiteSpace 2263..2264 " " -| | | | | | | | | | | | | | | | EqualSignal 2264..2267 -| | | | | | | | | | | | | | | | | EqualSignal 2264..2267 "===" -| | | | | | | | | | | | | | | | WhiteSpace 2267..2268 -| | | | | | | | | | | | | | | | | WhiteSpace 2267..2268 " " -| | | | | | | | | | | | | | | | Expression 2268..2269 -| | | | | | | | | | | | | | | | | ExpressionAtom 2268..2269 -| | | | | | | | | | | | | | | | | | Number 2268..2269 -| | | | | | | | | | | | | | | | | | | Number 2268..2269 "0" -| | | | | | | | | | | | | | | Semicolon 2269..2270 -| | | | | | | | | | | | | | | | Semicolon 2269..2270 ";" -| | | | | | | | | | | | | | EndLine 2270..2272 -| | | | | | | | | | | | | | | EndLine 2270..2272 "\r\n" -| | | | | | | | | | | | | | WhiteSpace 2272..2276 -| | | | | | | | | | | | | | | WhiteSpace 2272..2276 " " -| | | | | | | | | | | | | | EndLine 2276..2278 -| | | | | | | | | | | | | | | EndLine 2276..2278 "\r\n" -| | | | | | | | | | | | | | WhiteSpace 2278..2290 -| | | | | | | | | | | | | | | WhiteSpace 2278..2290 " " -| | | | | | | | | | | | | | Statement 2290..2310 -| | | | | | | | | | | | | | | AssignStatement 2290..2309 -| | | | | | | | | | | | | | | | Expression 2290..2295 -| | | | | | | | | | | | | | | | | ExpressionAtom 2290..2294 -| | | | | | | | | | | | | | | | | | Identifier 2290..2294 -| | | | | | | | | | | | | | | | | | | Identifier 2290..2294 "lout" -| | | | | | | | | | | | | | | | | WhiteSpace 2294..2295 -| | | | | | | | | | | | | | | | | | WhiteSpace 2294..2295 " " -| | | | | | | | | | | | | | | | AddAssign 2295..2297 -| | | | | | | | | | | | | | | | | AddAssign 2295..2297 "+=" -| | | | | | | | | | | | | | | | WhiteSpace 2297..2298 -| | | | | | | | | | | | | | | | | WhiteSpace 2297..2298 " " -| | | | | | | | | | | | | | | | Expression 2298..2309 -| | | | | | | | | | | | | | | | | Mul 2298..2309 -| | | | | | | | | | | | | | | | | | ArrayQuery 2298..2304 -| | | | | | | | | | | | | | | | | | | ExpressionAtom 2298..2301 -| | | | | | | | | | | | | | | | | | | | Identifier 2298..2301 -| | | | | | | | | | | | | | | | | | | | | Identifier 2298..2301 "out" -| | | | | | | | | | | | | | | | | | | LBracket 2301..2302 -| | | | | | | | | | | | | | | | | | | | LBracket 2301..2302 "[" -| | | | | | | | | | | | | | | | | | | Expression 2302..2303 -| | | | | | | | | | | | | | | | | | | | ExpressionAtom 2302..2303 -| | | | | | | | | | | | | | | | | | | | | Identifier 2302..2303 -| | | | | | | | | | | | | | | | | | | | | | Identifier 2302..2303 "k" -| | | | | | | | | | | | | | | | | | | RBracket 2303..2304 -| | | | | | | | | | | | | | | | | | | | RBracket 2303..2304 "]" -| | | | | | | | | | | | | | | | | | WhiteSpace 2304..2305 -| | | | | | | | | | | | | | | | | | | WhiteSpace 2304..2305 " " -| | | | | | | | | | | | | | | | | | Mul 2305..2306 -| | | | | | | | | | | | | | | | | | | Mul 2305..2306 "*" -| | | | | | | | | | | | | | | | | | WhiteSpace 2306..2307 -| | | | | | | | | | | | | | | | | | | WhiteSpace 2306..2307 " " -| | | | | | | | | | | | | | | | | | ExpressionAtom 2307..2309 -| | | | | | | | | | | | | | | | | | | Identifier 2307..2309 -| | | | | | | | | | | | | | | | | | | | Identifier 2307..2309 "e2" -| | | | | | | | | | | | | | | Semicolon 2309..2310 -| | | | | | | | | | | | | | | | Semicolon 2309..2310 ";" -| | | | | | | | | | | | | | EndLine 2310..2312 -| | | | | | | | | | | | | | | EndLine 2310..2312 "\r\n" -| | | | | | | | | | | | | | WhiteSpace 2312..2316 -| | | | | | | | | | | | | | | WhiteSpace 2312..2316 " " -| | | | | | | | | | | | | | EndLine 2316..2318 -| | | | | | | | | | | | | | | EndLine 2316..2318 "\r\n" -| | | | | | | | | | | | | | WhiteSpace 2318..2330 -| | | | | | | | | | | | | | | WhiteSpace 2318..2330 " " -| | | | | | | | | | | | | | Statement 2330..2341 -| | | | | | | | | | | | | | | AssignStatement 2330..2340 -| | | | | | | | | | | | | | | | Expression 2330..2333 -| | | | | | | | | | | | | | | | | ExpressionAtom 2330..2332 -| | | | | | | | | | | | | | | | | | Identifier 2330..2332 -| | | | | | | | | | | | | | | | | | | Identifier 2330..2332 "e2" -| | | | | | | | | | | | | | | | | WhiteSpace 2332..2333 -| | | | | | | | | | | | | | | | | | WhiteSpace 2332..2333 " " -| | | | | | | | | | | | | | | | Assign 2333..2334 -| | | | | | | | | | | | | | | | | Assign 2333..2334 "=" -| | | | | | | | | | | | | | | | WhiteSpace 2334..2335 -| | | | | | | | | | | | | | | | | WhiteSpace 2334..2335 " " -| | | | | | | | | | | | | | | | Expression 2335..2340 -| | | | | | | | | | | | | | | | | Add 2335..2340 -| | | | | | | | | | | | | | | | | | ExpressionAtom 2335..2337 -| | | | | | | | | | | | | | | | | | | Identifier 2335..2337 -| | | | | | | | | | | | | | | | | | | | Identifier 2335..2337 "e2" -| | | | | | | | | | | | | | | | | | Add 2337..2338 -| | | | | | | | | | | | | | | | | | | Add 2337..2338 "+" -| | | | | | | | | | | | | | | | | | ExpressionAtom 2338..2340 -| | | | | | | | | | | | | | | | | | | Identifier 2338..2340 -| | | | | | | | | | | | | | | | | | | | Identifier 2338..2340 "e2" -| | | | | | | | | | | | | | | Semicolon 2340..2341 -| | | | | | | | | | | | | | | | Semicolon 2340..2341 ";" -| | | | | | | | | | | | | | EndLine 2341..2343 -| | | | | | | | | | | | | | | EndLine 2341..2343 "\r\n" -| | | | | | | | | | | | | | WhiteSpace 2343..2351 -| | | | | | | | | | | | | | | WhiteSpace 2343..2351 " " -| | | | | | | | | | | | | RCurly 2351..2352 -| | | | | | | | | | | | | | RCurly 2351..2352 "}" -| | | | | | | | | EndLine 2352..2354 -| | | | | | | | | | EndLine 2352..2354 "\r\n" -| | | | | | | | | WhiteSpace 2354..2358 -| | | | | | | | | | WhiteSpace 2354..2358 " " -| | | | | | | | | EndLine 2358..2360 -| | | | | | | | | | EndLine 2358..2360 "\r\n" -| | | | | | | | | WhiteSpace 2360..2368 -| | | | | | | | | | WhiteSpace 2360..2368 " " -| | | | | | | | | CommentLine 2368..2386 -| | | | | | | | | | CommentLine 2368..2386 "// Ensure the sum;" -| | | | | | | | | EndLine 2386..2388 -| | | | | | | | | | EndLine 2386..2388 "\r\n" -| | | | | | | | | WhiteSpace 2388..2392 -| | | | | | | | | | WhiteSpace 2388..2392 " " -| | | | | | | | | EndLine 2392..2394 -| | | | | | | | | | EndLine 2392..2394 "\r\n" -| | | | | | | | | WhiteSpace 2394..2402 -| | | | | | | | | | WhiteSpace 2394..2402 " " -| | | | | | | | | Statement 2402..2415 -| | | | | | | | | | AssignStatement 2402..2414 -| | | | | | | | | | | Expression 2402..2406 -| | | | | | | | | | | | ExpressionAtom 2402..2405 -| | | | | | | | | | | | | Identifier 2402..2405 -| | | | | | | | | | | | | | Identifier 2402..2405 "lin" -| | | | | | | | | | | | WhiteSpace 2405..2406 -| | | | | | | | | | | | | WhiteSpace 2405..2406 " " -| | | | | | | | | | | EqualSignal 2406..2409 -| | | | | | | | | | | | EqualSignal 2406..2409 "===" -| | | | | | | | | | | WhiteSpace 2409..2410 -| | | | | | | | | | | | WhiteSpace 2409..2410 " " -| | | | | | | | | | | Expression 2410..2414 -| | | | | | | | | | | | ExpressionAtom 2410..2414 -| | | | | | | | | | | | | Identifier 2410..2414 -| | | | | | | | | | | | | | Identifier 2410..2414 "lout" -| | | | | | | | | | Semicolon 2414..2415 -| | | | | | | | | | | Semicolon 2414..2415 ";" -| | | | | | | | | EndLine 2415..2417 -| | | | | | | | | | EndLine 2415..2417 "\r\n" -| | | | | | | | | WhiteSpace 2417..2421 -| | | | | | | | | | WhiteSpace 2417..2421 " " -| | | | | | | | RCurly 2421..2422 -| | | | | | | | | RCurly 2421..2422 "}" +| | | | ForLoop 1965..2422 +| | | | | ForKw 1965..1968 +| | | | | | ForKw 1965..1968 "for" +| | | | | WhiteSpace 1968..1969 +| | | | | | WhiteSpace 1968..1969 " " +| | | | | LParen 1969..1970 +| | | | | | LParen 1969..1970 "(" +| | | | | AssignStatement 1970..1973 +| | | | | | Expression 1970..1971 +| | | | | | | ExpressionAtom 1970..1971 +| | | | | | | | Identifier 1970..1971 +| | | | | | | | | Identifier 1970..1971 "k" +| | | | | | Assign 1971..1972 +| | | | | | | Assign 1971..1972 "=" +| | | | | | Expression 1972..1973 +| | | | | | | ExpressionAtom 1972..1973 +| | | | | | | | Number 1972..1973 +| | | | | | | | | Number 1972..1973 "0" +| | | | | Semicolon 1973..1974 +| | | | | | Semicolon 1973..1974 ";" +| | | | | WhiteSpace 1974..1975 +| | | | | | WhiteSpace 1974..1975 " " +| | | | | Expression 1975..1978 +| | | | | | LessThan 1975..1978 +| | | | | | | ExpressionAtom 1975..1976 +| | | | | | | | Identifier 1975..1976 +| | | | | | | | | Identifier 1975..1976 "k" +| | | | | | | LessThan 1976..1977 +| | | | | | | | LessThan 1976..1977 "<" +| | | | | | | ExpressionAtom 1977..1978 +| | | | | | | | Identifier 1977..1978 +| | | | | | | | | Identifier 1977..1978 "n" +| | | | | Semicolon 1978..1979 +| | | | | | Semicolon 1978..1979 ";" +| | | | | WhiteSpace 1979..1980 +| | | | | | WhiteSpace 1979..1980 " " +| | | | | AssignStatement 1980..1983 +| | | | | | Expression 1980..1983 +| | | | | | | UnitInc 1980..1983 +| | | | | | | | ExpressionAtom 1980..1981 +| | | | | | | | | Identifier 1980..1981 +| | | | | | | | | | Identifier 1980..1981 "k" +| | | | | | | | UnitInc 1981..1983 +| | | | | | | | | UnitInc 1981..1983 "++" +| | | | | RParen 1983..1984 +| | | | | | RParen 1983..1984 ")" +| | | | | WhiteSpace 1984..1985 +| | | | | | WhiteSpace 1984..1985 " " +| | | | | Block 1985..2422 +| | | | | | LCurly 1985..1986 +| | | | | | | LCurly 1985..1986 "{" +| | | | | | EndLine 1986..1988 +| | | | | | | EndLine 1986..1988 "\r\n" +| | | | | | WhiteSpace 1988..1996 +| | | | | | | WhiteSpace 1988..1996 " " +| | | | | | StatementList 1996..2421 +| | | | | | | ForLoop 1996..2065 +| | | | | | | | ForKw 1996..1999 +| | | | | | | | | ForKw 1996..1999 "for" +| | | | | | | | WhiteSpace 1999..2000 +| | | | | | | | | WhiteSpace 1999..2000 " " +| | | | | | | | LParen 2000..2001 +| | | | | | | | | LParen 2000..2001 "(" +| | | | | | | | AssignStatement 2001..2004 +| | | | | | | | | Expression 2001..2002 +| | | | | | | | | | ExpressionAtom 2001..2002 +| | | | | | | | | | | Identifier 2001..2002 +| | | | | | | | | | | | Identifier 2001..2002 "j" +| | | | | | | | | Assign 2002..2003 +| | | | | | | | | | Assign 2002..2003 "=" +| | | | | | | | | Expression 2003..2004 +| | | | | | | | | | ExpressionAtom 2003..2004 +| | | | | | | | | | | Number 2003..2004 +| | | | | | | | | | | | Number 2003..2004 "0" +| | | | | | | | Semicolon 2004..2005 +| | | | | | | | | Semicolon 2004..2005 ";" +| | | | | | | | WhiteSpace 2005..2006 +| | | | | | | | | WhiteSpace 2005..2006 " " +| | | | | | | | Expression 2006..2011 +| | | | | | | | | LessThan 2006..2011 +| | | | | | | | | | ExpressionAtom 2006..2007 +| | | | | | | | | | | Identifier 2006..2007 +| | | | | | | | | | | | Identifier 2006..2007 "j" +| | | | | | | | | | LessThan 2007..2008 +| | | | | | | | | | | LessThan 2007..2008 "<" +| | | | | | | | | | ExpressionAtom 2008..2011 +| | | | | | | | | | | Identifier 2008..2011 +| | | | | | | | | | | | Identifier 2008..2011 "ops" +| | | | | | | | Semicolon 2011..2012 +| | | | | | | | | Semicolon 2011..2012 ";" +| | | | | | | | WhiteSpace 2012..2013 +| | | | | | | | | WhiteSpace 2012..2013 " " +| | | | | | | | AssignStatement 2013..2016 +| | | | | | | | | Expression 2013..2016 +| | | | | | | | | | UnitInc 2013..2016 +| | | | | | | | | | | ExpressionAtom 2013..2014 +| | | | | | | | | | | | Identifier 2013..2014 +| | | | | | | | | | | | | Identifier 2013..2014 "j" +| | | | | | | | | | | UnitInc 2014..2016 +| | | | | | | | | | | | UnitInc 2014..2016 "++" +| | | | | | | | RParen 2016..2017 +| | | | | | | | | RParen 2016..2017 ")" +| | | | | | | | WhiteSpace 2017..2018 +| | | | | | | | | WhiteSpace 2017..2018 " " +| | | | | | | | Block 2018..2065 +| | | | | | | | | LCurly 2018..2019 +| | | | | | | | | | LCurly 2018..2019 "{" +| | | | | | | | | EndLine 2019..2021 +| | | | | | | | | | EndLine 2019..2021 "\r\n" +| | | | | | | | | WhiteSpace 2021..2033 +| | | | | | | | | | WhiteSpace 2021..2033 " " +| | | | | | | | | StatementList 2033..2064 +| | | | | | | | | | AssignStatement 2033..2053 +| | | | | | | | | | | Expression 2033..2037 +| | | | | | | | | | | | ExpressionAtom 2033..2036 +| | | | | | | | | | | | | Identifier 2033..2036 +| | | | | | | | | | | | | | Identifier 2033..2036 "lin" +| | | | | | | | | | | | WhiteSpace 2036..2037 +| | | | | | | | | | | | | WhiteSpace 2036..2037 " " +| | | | | | | | | | | AddAssign 2037..2039 +| | | | | | | | | | | | AddAssign 2037..2039 "+=" +| | | | | | | | | | | WhiteSpace 2039..2040 +| | | | | | | | | | | | WhiteSpace 2039..2040 " " +| | | | | | | | | | | Expression 2040..2053 +| | | | | | | | | | | | Mul 2040..2053 +| | | | | | | | | | | | | ArrayQuery 2040..2048 +| | | | | | | | | | | | | | ArrayQuery 2040..2045 +| | | | | | | | | | | | | | | ExpressionAtom 2040..2042 +| | | | | | | | | | | | | | | | Identifier 2040..2042 +| | | | | | | | | | | | | | | | | Identifier 2040..2042 "in" +| | | | | | | | | | | | | | | LBracket 2042..2043 +| | | | | | | | | | | | | | | | LBracket 2042..2043 "[" +| | | | | | | | | | | | | | | Expression 2043..2044 +| | | | | | | | | | | | | | | | ExpressionAtom 2043..2044 +| | | | | | | | | | | | | | | | | Identifier 2043..2044 +| | | | | | | | | | | | | | | | | | Identifier 2043..2044 "j" +| | | | | | | | | | | | | | | RBracket 2044..2045 +| | | | | | | | | | | | | | | | RBracket 2044..2045 "]" +| | | | | | | | | | | | | | LBracket 2045..2046 +| | | | | | | | | | | | | | | LBracket 2045..2046 "[" +| | | | | | | | | | | | | | Expression 2046..2047 +| | | | | | | | | | | | | | | ExpressionAtom 2046..2047 +| | | | | | | | | | | | | | | | Identifier 2046..2047 +| | | | | | | | | | | | | | | | | Identifier 2046..2047 "k" +| | | | | | | | | | | | | | RBracket 2047..2048 +| | | | | | | | | | | | | | | RBracket 2047..2048 "]" +| | | | | | | | | | | | | WhiteSpace 2048..2049 +| | | | | | | | | | | | | | WhiteSpace 2048..2049 " " +| | | | | | | | | | | | | Mul 2049..2050 +| | | | | | | | | | | | | | Mul 2049..2050 "*" +| | | | | | | | | | | | | WhiteSpace 2050..2051 +| | | | | | | | | | | | | | WhiteSpace 2050..2051 " " +| | | | | | | | | | | | | ExpressionAtom 2051..2053 +| | | | | | | | | | | | | | Identifier 2051..2053 +| | | | | | | | | | | | | | | Identifier 2051..2053 "e2" +| | | | | | | | | | Semicolon 2053..2054 +| | | | | | | | | | | Semicolon 2053..2054 ";" +| | | | | | | | | | EndLine 2054..2056 +| | | | | | | | | | | EndLine 2054..2056 "\r\n" +| | | | | | | | | | WhiteSpace 2056..2064 +| | | | | | | | | | | WhiteSpace 2056..2064 " " +| | | | | | | | | RCurly 2064..2065 +| | | | | | | | | | RCurly 2064..2065 "}" +| | | | | | | EndLine 2065..2067 +| | | | | | | | EndLine 2065..2067 "\r\n" +| | | | | | | WhiteSpace 2067..2075 +| | | | | | | | WhiteSpace 2067..2075 " " +| | | | | | | AssignStatement 2075..2087 +| | | | | | | | Expression 2075..2078 +| | | | | | | | | ExpressionAtom 2075..2077 +| | | | | | | | | | Identifier 2075..2077 +| | | | | | | | | | | Identifier 2075..2077 "e2" +| | | | | | | | | WhiteSpace 2077..2078 +| | | | | | | | | | WhiteSpace 2077..2078 " " +| | | | | | | | Assign 2078..2079 +| | | | | | | | | Assign 2078..2079 "=" +| | | | | | | | WhiteSpace 2079..2080 +| | | | | | | | | WhiteSpace 2079..2080 " " +| | | | | | | | Expression 2080..2087 +| | | | | | | | | Add 2080..2087 +| | | | | | | | | | ExpressionAtom 2080..2082 +| | | | | | | | | | | Identifier 2080..2082 +| | | | | | | | | | | | Identifier 2080..2082 "e2" +| | | | | | | | | | WhiteSpace 2082..2083 +| | | | | | | | | | | WhiteSpace 2082..2083 " " +| | | | | | | | | | Add 2083..2084 +| | | | | | | | | | | Add 2083..2084 "+" +| | | | | | | | | | WhiteSpace 2084..2085 +| | | | | | | | | | | WhiteSpace 2084..2085 " " +| | | | | | | | | | ExpressionAtom 2085..2087 +| | | | | | | | | | | Identifier 2085..2087 +| | | | | | | | | | | | Identifier 2085..2087 "e2" +| | | | | | | Semicolon 2087..2088 +| | | | | | | | Semicolon 2087..2088 ";" +| | | | | | | EndLine 2088..2090 +| | | | | | | | EndLine 2088..2090 "\r\n" +| | | | | | | WhiteSpace 2090..2094 +| | | | | | | | WhiteSpace 2090..2094 " " +| | | | | | | EndLine 2094..2096 +| | | | | | | | EndLine 2094..2096 "\r\n" +| | | | | | | WhiteSpace 2096..2104 +| | | | | | | | WhiteSpace 2096..2104 " " +| | | | | | | AssignStatement 2104..2110 +| | | | | | | | Expression 2104..2107 +| | | | | | | | | ExpressionAtom 2104..2106 +| | | | | | | | | | Identifier 2104..2106 +| | | | | | | | | | | Identifier 2104..2106 "e2" +| | | | | | | | | WhiteSpace 2106..2107 +| | | | | | | | | | WhiteSpace 2106..2107 " " +| | | | | | | | Assign 2107..2108 +| | | | | | | | | Assign 2107..2108 "=" +| | | | | | | | WhiteSpace 2108..2109 +| | | | | | | | | WhiteSpace 2108..2109 " " +| | | | | | | | Expression 2109..2110 +| | | | | | | | | ExpressionAtom 2109..2110 +| | | | | | | | | | Number 2109..2110 +| | | | | | | | | | | Number 2109..2110 "1" +| | | | | | | Semicolon 2110..2111 +| | | | | | | | Semicolon 2110..2111 ";" +| | | | | | | EndLine 2111..2113 +| | | | | | | | EndLine 2111..2113 "\r\n" +| | | | | | | WhiteSpace 2113..2121 +| | | | | | | | WhiteSpace 2113..2121 " " +| | | | | | | ForLoop 2121..2352 +| | | | | | | | ForKw 2121..2124 +| | | | | | | | | ForKw 2121..2124 "for" +| | | | | | | | WhiteSpace 2124..2125 +| | | | | | | | | WhiteSpace 2124..2125 " " +| | | | | | | | LParen 2125..2126 +| | | | | | | | | LParen 2125..2126 "(" +| | | | | | | | AssignStatement 2126..2129 +| | | | | | | | | Expression 2126..2127 +| | | | | | | | | | ExpressionAtom 2126..2127 +| | | | | | | | | | | Identifier 2126..2127 +| | | | | | | | | | | | Identifier 2126..2127 "k" +| | | | | | | | | Assign 2127..2128 +| | | | | | | | | | Assign 2127..2128 "=" +| | | | | | | | | Expression 2128..2129 +| | | | | | | | | | ExpressionAtom 2128..2129 +| | | | | | | | | | | Number 2128..2129 +| | | | | | | | | | | | Number 2128..2129 "0" +| | | | | | | | Semicolon 2129..2130 +| | | | | | | | | Semicolon 2129..2130 ";" +| | | | | | | | WhiteSpace 2130..2131 +| | | | | | | | | WhiteSpace 2130..2131 " " +| | | | | | | | Expression 2131..2137 +| | | | | | | | | LessThan 2131..2137 +| | | | | | | | | | ExpressionAtom 2131..2132 +| | | | | | | | | | | Identifier 2131..2132 +| | | | | | | | | | | | Identifier 2131..2132 "k" +| | | | | | | | | | LessThan 2132..2133 +| | | | | | | | | | | LessThan 2132..2133 "<" +| | | | | | | | | | ExpressionAtom 2133..2137 +| | | | | | | | | | | Identifier 2133..2137 +| | | | | | | | | | | | Identifier 2133..2137 "nout" +| | | | | | | | Semicolon 2137..2138 +| | | | | | | | | Semicolon 2137..2138 ";" +| | | | | | | | WhiteSpace 2138..2139 +| | | | | | | | | WhiteSpace 2138..2139 " " +| | | | | | | | AssignStatement 2139..2142 +| | | | | | | | | Expression 2139..2142 +| | | | | | | | | | UnitInc 2139..2142 +| | | | | | | | | | | ExpressionAtom 2139..2140 +| | | | | | | | | | | | Identifier 2139..2140 +| | | | | | | | | | | | | Identifier 2139..2140 "k" +| | | | | | | | | | | UnitInc 2140..2142 +| | | | | | | | | | | | UnitInc 2140..2142 "++" +| | | | | | | | RParen 2142..2143 +| | | | | | | | | RParen 2142..2143 ")" +| | | | | | | | WhiteSpace 2143..2144 +| | | | | | | | | WhiteSpace 2143..2144 " " +| | | | | | | | Block 2144..2352 +| | | | | | | | | LCurly 2144..2145 +| | | | | | | | | | LCurly 2144..2145 "{" +| | | | | | | | | EndLine 2145..2147 +| | | | | | | | | | EndLine 2145..2147 "\r\n" +| | | | | | | | | WhiteSpace 2147..2159 +| | | | | | | | | | WhiteSpace 2147..2159 " " +| | | | | | | | | StatementList 2159..2351 +| | | | | | | | | | AssignStatement 2159..2184 +| | | | | | | | | | | Expression 2159..2166 +| | | | | | | | | | | | ArrayQuery 2159..2165 +| | | | | | | | | | | | | ExpressionAtom 2159..2162 +| | | | | | | | | | | | | | Identifier 2159..2162 +| | | | | | | | | | | | | | | Identifier 2159..2162 "out" +| | | | | | | | | | | | | LBracket 2162..2163 +| | | | | | | | | | | | | | LBracket 2162..2163 "[" +| | | | | | | | | | | | | Expression 2163..2164 +| | | | | | | | | | | | | | ExpressionAtom 2163..2164 +| | | | | | | | | | | | | | | Identifier 2163..2164 +| | | | | | | | | | | | | | | | Identifier 2163..2164 "k" +| | | | | | | | | | | | | RBracket 2164..2165 +| | | | | | | | | | | | | | RBracket 2164..2165 "]" +| | | | | | | | | | | | WhiteSpace 2165..2166 +| | | | | | | | | | | | | WhiteSpace 2165..2166 " " +| | | | | | | | | | | RAssignSignal 2166..2169 +| | | | | | | | | | | | RAssignSignal 2166..2169 "<--" +| | | | | | | | | | | WhiteSpace 2169..2170 +| | | | | | | | | | | | WhiteSpace 2169..2170 " " +| | | | | | | | | | | Expression 2170..2184 +| | | | | | | | | | | | BitAnd 2170..2184 +| | | | | | | | | | | | | Expression 2170..2180 +| | | | | | | | | | | | | | LParen 2170..2171 +| | | | | | | | | | | | | | | LParen 2170..2171 "(" +| | | | | | | | | | | | | | ShiftR 2171..2179 +| | | | | | | | | | | | | | | ExpressionAtom 2171..2174 +| | | | | | | | | | | | | | | | Identifier 2171..2174 +| | | | | | | | | | | | | | | | | Identifier 2171..2174 "lin" +| | | | | | | | | | | | | | | WhiteSpace 2174..2175 +| | | | | | | | | | | | | | | | WhiteSpace 2174..2175 " " +| | | | | | | | | | | | | | | ShiftR 2175..2177 +| | | | | | | | | | | | | | | | ShiftR 2175..2177 ">>" +| | | | | | | | | | | | | | | WhiteSpace 2177..2178 +| | | | | | | | | | | | | | | | WhiteSpace 2177..2178 " " +| | | | | | | | | | | | | | | ExpressionAtom 2178..2179 +| | | | | | | | | | | | | | | | Identifier 2178..2179 +| | | | | | | | | | | | | | | | | Identifier 2178..2179 "k" +| | | | | | | | | | | | | | RParen 2179..2180 +| | | | | | | | | | | | | | | RParen 2179..2180 ")" +| | | | | | | | | | | | | WhiteSpace 2180..2181 +| | | | | | | | | | | | | | WhiteSpace 2180..2181 " " +| | | | | | | | | | | | | BitAnd 2181..2182 +| | | | | | | | | | | | | | BitAnd 2181..2182 "&" +| | | | | | | | | | | | | WhiteSpace 2182..2183 +| | | | | | | | | | | | | | WhiteSpace 2182..2183 " " +| | | | | | | | | | | | | ExpressionAtom 2183..2184 +| | | | | | | | | | | | | | Number 2183..2184 +| | | | | | | | | | | | | | | Number 2183..2184 "1" +| | | | | | | | | | Semicolon 2184..2185 +| | | | | | | | | | | Semicolon 2184..2185 ";" +| | | | | | | | | | EndLine 2185..2187 +| | | | | | | | | | | EndLine 2185..2187 "\r\n" +| | | | | | | | | | WhiteSpace 2187..2191 +| | | | | | | | | | | WhiteSpace 2187..2191 " " +| | | | | | | | | | EndLine 2191..2193 +| | | | | | | | | | | EndLine 2191..2193 "\r\n" +| | | | | | | | | | WhiteSpace 2193..2205 +| | | | | | | | | | | WhiteSpace 2193..2205 " " +| | | | | | | | | | CommentLine 2205..2228 +| | | | | | | | | | | CommentLine 2205..2228 "// Ensure out is binary" +| | | | | | | | | | EndLine 2228..2230 +| | | | | | | | | | | EndLine 2228..2230 "\r\n" +| | | | | | | | | | WhiteSpace 2230..2242 +| | | | | | | | | | | WhiteSpace 2230..2242 " " +| | | | | | | | | | AssignStatement 2242..2269 +| | | | | | | | | | | Expression 2242..2264 +| | | | | | | | | | | | Mul 2242..2264 +| | | | | | | | | | | | | ArrayQuery 2242..2248 +| | | | | | | | | | | | | | ExpressionAtom 2242..2245 +| | | | | | | | | | | | | | | Identifier 2242..2245 +| | | | | | | | | | | | | | | | Identifier 2242..2245 "out" +| | | | | | | | | | | | | | LBracket 2245..2246 +| | | | | | | | | | | | | | | LBracket 2245..2246 "[" +| | | | | | | | | | | | | | Expression 2246..2247 +| | | | | | | | | | | | | | | ExpressionAtom 2246..2247 +| | | | | | | | | | | | | | | | Identifier 2246..2247 +| | | | | | | | | | | | | | | | | Identifier 2246..2247 "k" +| | | | | | | | | | | | | | RBracket 2247..2248 +| | | | | | | | | | | | | | | RBracket 2247..2248 "]" +| | | | | | | | | | | | | WhiteSpace 2248..2249 +| | | | | | | | | | | | | | WhiteSpace 2248..2249 " " +| | | | | | | | | | | | | Mul 2249..2250 +| | | | | | | | | | | | | | Mul 2249..2250 "*" +| | | | | | | | | | | | | WhiteSpace 2250..2251 +| | | | | | | | | | | | | | WhiteSpace 2250..2251 " " +| | | | | | | | | | | | | Expression 2251..2263 +| | | | | | | | | | | | | | LParen 2251..2252 +| | | | | | | | | | | | | | | LParen 2251..2252 "(" +| | | | | | | | | | | | | | Sub 2252..2262 +| | | | | | | | | | | | | | | ArrayQuery 2252..2258 +| | | | | | | | | | | | | | | | ExpressionAtom 2252..2255 +| | | | | | | | | | | | | | | | | Identifier 2252..2255 +| | | | | | | | | | | | | | | | | | Identifier 2252..2255 "out" +| | | | | | | | | | | | | | | | LBracket 2255..2256 +| | | | | | | | | | | | | | | | | LBracket 2255..2256 "[" +| | | | | | | | | | | | | | | | Expression 2256..2257 +| | | | | | | | | | | | | | | | | ExpressionAtom 2256..2257 +| | | | | | | | | | | | | | | | | | Identifier 2256..2257 +| | | | | | | | | | | | | | | | | | | Identifier 2256..2257 "k" +| | | | | | | | | | | | | | | | RBracket 2257..2258 +| | | | | | | | | | | | | | | | | RBracket 2257..2258 "]" +| | | | | | | | | | | | | | | WhiteSpace 2258..2259 +| | | | | | | | | | | | | | | | WhiteSpace 2258..2259 " " +| | | | | | | | | | | | | | | Sub 2259..2260 +| | | | | | | | | | | | | | | | Sub 2259..2260 "-" +| | | | | | | | | | | | | | | WhiteSpace 2260..2261 +| | | | | | | | | | | | | | | | WhiteSpace 2260..2261 " " +| | | | | | | | | | | | | | | ExpressionAtom 2261..2262 +| | | | | | | | | | | | | | | | Number 2261..2262 +| | | | | | | | | | | | | | | | | Number 2261..2262 "1" +| | | | | | | | | | | | | | RParen 2262..2263 +| | | | | | | | | | | | | | | RParen 2262..2263 ")" +| | | | | | | | | | | | | WhiteSpace 2263..2264 +| | | | | | | | | | | | | | WhiteSpace 2263..2264 " " +| | | | | | | | | | | EqualSignal 2264..2267 +| | | | | | | | | | | | EqualSignal 2264..2267 "===" +| | | | | | | | | | | WhiteSpace 2267..2268 +| | | | | | | | | | | | WhiteSpace 2267..2268 " " +| | | | | | | | | | | Expression 2268..2269 +| | | | | | | | | | | | ExpressionAtom 2268..2269 +| | | | | | | | | | | | | Number 2268..2269 +| | | | | | | | | | | | | | Number 2268..2269 "0" +| | | | | | | | | | Semicolon 2269..2270 +| | | | | | | | | | | Semicolon 2269..2270 ";" +| | | | | | | | | | EndLine 2270..2272 +| | | | | | | | | | | EndLine 2270..2272 "\r\n" +| | | | | | | | | | WhiteSpace 2272..2276 +| | | | | | | | | | | WhiteSpace 2272..2276 " " +| | | | | | | | | | EndLine 2276..2278 +| | | | | | | | | | | EndLine 2276..2278 "\r\n" +| | | | | | | | | | WhiteSpace 2278..2290 +| | | | | | | | | | | WhiteSpace 2278..2290 " " +| | | | | | | | | | AssignStatement 2290..2309 +| | | | | | | | | | | Expression 2290..2295 +| | | | | | | | | | | | ExpressionAtom 2290..2294 +| | | | | | | | | | | | | Identifier 2290..2294 +| | | | | | | | | | | | | | Identifier 2290..2294 "lout" +| | | | | | | | | | | | WhiteSpace 2294..2295 +| | | | | | | | | | | | | WhiteSpace 2294..2295 " " +| | | | | | | | | | | AddAssign 2295..2297 +| | | | | | | | | | | | AddAssign 2295..2297 "+=" +| | | | | | | | | | | WhiteSpace 2297..2298 +| | | | | | | | | | | | WhiteSpace 2297..2298 " " +| | | | | | | | | | | Expression 2298..2309 +| | | | | | | | | | | | Mul 2298..2309 +| | | | | | | | | | | | | ArrayQuery 2298..2304 +| | | | | | | | | | | | | | ExpressionAtom 2298..2301 +| | | | | | | | | | | | | | | Identifier 2298..2301 +| | | | | | | | | | | | | | | | Identifier 2298..2301 "out" +| | | | | | | | | | | | | | LBracket 2301..2302 +| | | | | | | | | | | | | | | LBracket 2301..2302 "[" +| | | | | | | | | | | | | | Expression 2302..2303 +| | | | | | | | | | | | | | | ExpressionAtom 2302..2303 +| | | | | | | | | | | | | | | | Identifier 2302..2303 +| | | | | | | | | | | | | | | | | Identifier 2302..2303 "k" +| | | | | | | | | | | | | | RBracket 2303..2304 +| | | | | | | | | | | | | | | RBracket 2303..2304 "]" +| | | | | | | | | | | | | WhiteSpace 2304..2305 +| | | | | | | | | | | | | | WhiteSpace 2304..2305 " " +| | | | | | | | | | | | | Mul 2305..2306 +| | | | | | | | | | | | | | Mul 2305..2306 "*" +| | | | | | | | | | | | | WhiteSpace 2306..2307 +| | | | | | | | | | | | | | WhiteSpace 2306..2307 " " +| | | | | | | | | | | | | ExpressionAtom 2307..2309 +| | | | | | | | | | | | | | Identifier 2307..2309 +| | | | | | | | | | | | | | | Identifier 2307..2309 "e2" +| | | | | | | | | | Semicolon 2309..2310 +| | | | | | | | | | | Semicolon 2309..2310 ";" +| | | | | | | | | | EndLine 2310..2312 +| | | | | | | | | | | EndLine 2310..2312 "\r\n" +| | | | | | | | | | WhiteSpace 2312..2316 +| | | | | | | | | | | WhiteSpace 2312..2316 " " +| | | | | | | | | | EndLine 2316..2318 +| | | | | | | | | | | EndLine 2316..2318 "\r\n" +| | | | | | | | | | WhiteSpace 2318..2330 +| | | | | | | | | | | WhiteSpace 2318..2330 " " +| | | | | | | | | | AssignStatement 2330..2340 +| | | | | | | | | | | Expression 2330..2333 +| | | | | | | | | | | | ExpressionAtom 2330..2332 +| | | | | | | | | | | | | Identifier 2330..2332 +| | | | | | | | | | | | | | Identifier 2330..2332 "e2" +| | | | | | | | | | | | WhiteSpace 2332..2333 +| | | | | | | | | | | | | WhiteSpace 2332..2333 " " +| | | | | | | | | | | Assign 2333..2334 +| | | | | | | | | | | | Assign 2333..2334 "=" +| | | | | | | | | | | WhiteSpace 2334..2335 +| | | | | | | | | | | | WhiteSpace 2334..2335 " " +| | | | | | | | | | | Expression 2335..2340 +| | | | | | | | | | | | Add 2335..2340 +| | | | | | | | | | | | | ExpressionAtom 2335..2337 +| | | | | | | | | | | | | | Identifier 2335..2337 +| | | | | | | | | | | | | | | Identifier 2335..2337 "e2" +| | | | | | | | | | | | | Add 2337..2338 +| | | | | | | | | | | | | | Add 2337..2338 "+" +| | | | | | | | | | | | | ExpressionAtom 2338..2340 +| | | | | | | | | | | | | | Identifier 2338..2340 +| | | | | | | | | | | | | | | Identifier 2338..2340 "e2" +| | | | | | | | | | Semicolon 2340..2341 +| | | | | | | | | | | Semicolon 2340..2341 ";" +| | | | | | | | | | EndLine 2341..2343 +| | | | | | | | | | | EndLine 2341..2343 "\r\n" +| | | | | | | | | | WhiteSpace 2343..2351 +| | | | | | | | | | | WhiteSpace 2343..2351 " " +| | | | | | | | | RCurly 2351..2352 +| | | | | | | | | | RCurly 2351..2352 "}" +| | | | | | | EndLine 2352..2354 +| | | | | | | | EndLine 2352..2354 "\r\n" +| | | | | | | WhiteSpace 2354..2358 +| | | | | | | | WhiteSpace 2354..2358 " " +| | | | | | | EndLine 2358..2360 +| | | | | | | | EndLine 2358..2360 "\r\n" +| | | | | | | WhiteSpace 2360..2368 +| | | | | | | | WhiteSpace 2360..2368 " " +| | | | | | | CommentLine 2368..2386 +| | | | | | | | CommentLine 2368..2386 "// Ensure the sum;" +| | | | | | | EndLine 2386..2388 +| | | | | | | | EndLine 2386..2388 "\r\n" +| | | | | | | WhiteSpace 2388..2392 +| | | | | | | | WhiteSpace 2388..2392 " " +| | | | | | | EndLine 2392..2394 +| | | | | | | | EndLine 2392..2394 "\r\n" +| | | | | | | WhiteSpace 2394..2402 +| | | | | | | | WhiteSpace 2394..2402 " " +| | | | | | | AssignStatement 2402..2414 +| | | | | | | | Expression 2402..2406 +| | | | | | | | | ExpressionAtom 2402..2405 +| | | | | | | | | | Identifier 2402..2405 +| | | | | | | | | | | Identifier 2402..2405 "lin" +| | | | | | | | | WhiteSpace 2405..2406 +| | | | | | | | | | WhiteSpace 2405..2406 " " +| | | | | | | | EqualSignal 2406..2409 +| | | | | | | | | EqualSignal 2406..2409 "===" +| | | | | | | | WhiteSpace 2409..2410 +| | | | | | | | | WhiteSpace 2409..2410 " " +| | | | | | | | Expression 2410..2414 +| | | | | | | | | ExpressionAtom 2410..2414 +| | | | | | | | | | Identifier 2410..2414 +| | | | | | | | | | | Identifier 2410..2414 "lout" +| | | | | | | Semicolon 2414..2415 +| | | | | | | | Semicolon 2414..2415 ";" +| | | | | | | EndLine 2415..2417 +| | | | | | | | EndLine 2415..2417 "\r\n" +| | | | | | | WhiteSpace 2417..2421 +| | | | | | | | WhiteSpace 2417..2421 " " +| | | | | | RCurly 2421..2422 +| | | | | | | RCurly 2421..2422 "}" | | | | EndLine 2422..2424 | | | | | EndLine 2422..2424 "\r\n" | | | RCurly 2424..2425 diff --git a/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__statements.circom.snap b/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__statements.circom.snap new file mode 100644 index 0000000..0fed8a2 --- /dev/null +++ b/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__statements.circom.snap @@ -0,0 +1,483 @@ +--- +source: crates/syntax/src/syntax.rs +expression: "crate :: view_syntax :: view_ast(& syntax)" +--- + Block 0..425 +| LCurly 0..1 +| | LCurly 0..1 "{" +| EndLine 1..2 +| | EndLine 1..2 "\n" +| WhiteSpace 2..6 +| | WhiteSpace 2..6 " " +| CommentLine 6..21 +| | CommentLine 6..21 "// if ... else " +| EndLine 21..22 +| | EndLine 21..22 "\n" +| WhiteSpace 22..26 +| | WhiteSpace 22..26 " " +| StatementList 26..424 +| | IfStatement 26..121 +| | | IfKw 26..28 +| | | | IfKw 26..28 "if" +| | | LParen 28..29 +| | | | LParen 28..29 "(" +| | | Expression 29..35 +| | | | Equal 29..35 +| | | | | ExpressionAtom 29..30 +| | | | | | Identifier 29..30 +| | | | | | | Identifier 29..30 "n" +| | | | | WhiteSpace 30..31 +| | | | | | WhiteSpace 30..31 " " +| | | | | Equal 31..33 +| | | | | | Equal 31..33 "==" +| | | | | WhiteSpace 33..34 +| | | | | | WhiteSpace 33..34 " " +| | | | | ExpressionAtom 34..35 +| | | | | | Number 34..35 +| | | | | | | Number 34..35 "2" +| | | RParen 35..36 +| | | | RParen 35..36 ")" +| | | WhiteSpace 36..37 +| | | | WhiteSpace 36..37 " " +| | | Block 37..89 +| | | | LCurly 37..38 +| | | | | LCurly 37..38 "{" +| | | | EndLine 38..39 +| | | | | EndLine 38..39 "\n" +| | | | WhiteSpace 39..47 +| | | | | WhiteSpace 39..47 " " +| | | | StatementList 47..88 +| | | | | AssignStatement 47..56 +| | | | | | Expression 47..51 +| | | | | | | ExpressionAtom 47..50 +| | | | | | | | Identifier 47..50 +| | | | | | | | | Identifier 47..50 "aux" +| | | | | | | WhiteSpace 50..51 +| | | | | | | | WhiteSpace 50..51 " " +| | | | | | RAssignConstraintSignal 51..54 +| | | | | | | RAssignConstraintSignal 51..54 "<==" +| | | | | | WhiteSpace 54..55 +| | | | | | | WhiteSpace 54..55 " " +| | | | | | Expression 55..56 +| | | | | | | ExpressionAtom 55..56 +| | | | | | | | Number 55..56 +| | | | | | | | | Number 55..56 "2" +| | | | | Semicolon 56..57 +| | | | | | Semicolon 56..57 ";" +| | | | | EndLine 57..58 +| | | | | | EndLine 57..58 "\n" +| | | | | WhiteSpace 58..66 +| | | | | | WhiteSpace 58..66 " " +| | | | | AssignStatement 66..82 +| | | | | | Expression 66..70 +| | | | | | | ExpressionAtom 66..69 +| | | | | | | | Identifier 66..69 +| | | | | | | | | Identifier 66..69 "out" +| | | | | | | WhiteSpace 69..70 +| | | | | | | | WhiteSpace 69..70 " " +| | | | | | RAssignConstraintSignal 70..73 +| | | | | | | RAssignConstraintSignal 70..73 "<==" +| | | | | | WhiteSpace 73..74 +| | | | | | | WhiteSpace 73..74 " " +| | | | | | Expression 74..82 +| | | | | | | Call 74..82 +| | | | | | | | Call 74..77 +| | | | | | | | | ExpressionAtom 74..75 +| | | | | | | | | | Identifier 74..75 +| | | | | | | | | | | Identifier 74..75 "B" +| | | | | | | | | LParen 75..76 +| | | | | | | | | | LParen 75..76 "(" +| | | | | | | | | RParen 76..77 +| | | | | | | | | | RParen 76..77 ")" +| | | | | | | | LParen 77..78 +| | | | | | | | | LParen 77..78 "(" +| | | | | | | | Expression 78..81 +| | | | | | | | | ExpressionAtom 78..81 +| | | | | | | | | | Identifier 78..81 +| | | | | | | | | | | Identifier 78..81 "aux" +| | | | | | | | RParen 81..82 +| | | | | | | | | RParen 81..82 ")" +| | | | | Semicolon 82..83 +| | | | | | Semicolon 82..83 ";" +| | | | | EndLine 83..84 +| | | | | | EndLine 83..84 "\n" +| | | | | WhiteSpace 84..88 +| | | | | | WhiteSpace 84..88 " " +| | | | RCurly 88..89 +| | | | | RCurly 88..89 "}" +| | | WhiteSpace 89..90 +| | | | WhiteSpace 89..90 " " +| | | ElseKw 90..94 +| | | | ElseKw 90..94 "else" +| | | WhiteSpace 94..95 +| | | | WhiteSpace 94..95 " " +| | | Block 95..121 +| | | | LCurly 95..96 +| | | | | LCurly 95..96 "{" +| | | | EndLine 96..97 +| | | | | EndLine 96..97 "\n" +| | | | WhiteSpace 97..105 +| | | | | WhiteSpace 97..105 " " +| | | | StatementList 105..120 +| | | | | AssignStatement 105..114 +| | | | | | Expression 105..109 +| | | | | | | ExpressionAtom 105..108 +| | | | | | | | Identifier 105..108 +| | | | | | | | | Identifier 105..108 "out" +| | | | | | | WhiteSpace 108..109 +| | | | | | | | WhiteSpace 108..109 " " +| | | | | | RAssignConstraintSignal 109..112 +| | | | | | | RAssignConstraintSignal 109..112 "<==" +| | | | | | WhiteSpace 112..113 +| | | | | | | WhiteSpace 112..113 " " +| | | | | | Expression 113..114 +| | | | | | | ExpressionAtom 113..114 +| | | | | | | | Number 113..114 +| | | | | | | | | Number 113..114 "5" +| | | | | Semicolon 114..115 +| | | | | | Semicolon 114..115 ";" +| | | | | EndLine 115..116 +| | | | | | EndLine 115..116 "\n" +| | | | | WhiteSpace 116..120 +| | | | | | WhiteSpace 116..120 " " +| | | | RCurly 120..121 +| | | | | RCurly 120..121 "}" +| | EndLine 121..122 +| | | EndLine 121..122 "\n" +| | EndLine 122..123 +| | | EndLine 122..123 "\n" +| | WhiteSpace 123..127 +| | | WhiteSpace 123..127 " " +| | CommentLine 127..133 +| | | CommentLine 127..133 "// for" +| | EndLine 133..134 +| | | EndLine 133..134 "\n" +| | WhiteSpace 134..138 +| | | WhiteSpace 134..138 " " +| | ForLoop 138..206 +| | | ForKw 138..141 +| | | | ForKw 138..141 "for" +| | | LParen 141..142 +| | | | LParen 141..142 "(" +| | | VarDecl 142..151 +| | | | VarKw 142..145 +| | | | | VarKw 142..145 "var" +| | | | WhiteSpace 145..146 +| | | | | WhiteSpace 145..146 " " +| | | | VarIdentifier 146..148 +| | | | | Identifier 146..147 +| | | | | | Identifier 146..147 "i" +| | | | | WhiteSpace 147..148 +| | | | | | WhiteSpace 147..148 " " +| | | | Assign 148..149 +| | | | | Assign 148..149 "=" +| | | | WhiteSpace 149..150 +| | | | | WhiteSpace 149..150 " " +| | | | Expression 150..151 +| | | | | ExpressionAtom 150..151 +| | | | | | Number 150..151 +| | | | | | | Number 150..151 "0" +| | | Semicolon 151..152 +| | | | Semicolon 151..152 ";" +| | | WhiteSpace 152..153 +| | | | WhiteSpace 152..153 " " +| | | Expression 153..160 +| | | | LessThan 153..160 +| | | | | ExpressionAtom 153..154 +| | | | | | Identifier 153..154 +| | | | | | | Identifier 153..154 "i" +| | | | | WhiteSpace 154..155 +| | | | | | WhiteSpace 154..155 " " +| | | | | LessThan 155..156 +| | | | | | LessThan 155..156 "<" +| | | | | WhiteSpace 156..157 +| | | | | | WhiteSpace 156..157 " " +| | | | | Sub 157..160 +| | | | | | ExpressionAtom 157..158 +| | | | | | | Identifier 157..158 +| | | | | | | | Identifier 157..158 "N" +| | | | | | Sub 158..159 +| | | | | | | Sub 158..159 "-" +| | | | | | ExpressionAtom 159..160 +| | | | | | | Number 159..160 +| | | | | | | | Number 159..160 "1" +| | | Semicolon 160..161 +| | | | Semicolon 160..161 ";" +| | | WhiteSpace 161..162 +| | | | WhiteSpace 161..162 " " +| | | AssignStatement 162..165 +| | | | Expression 162..165 +| | | | | UnitInc 162..165 +| | | | | | ExpressionAtom 162..163 +| | | | | | | Identifier 162..163 +| | | | | | | | Identifier 162..163 "i" +| | | | | | UnitInc 163..165 +| | | | | | | UnitInc 163..165 "++" +| | | RParen 165..166 +| | | | RParen 165..166 ")" +| | | Block 166..206 +| | | | LCurly 166..167 +| | | | | LCurly 166..167 "{" +| | | | EndLine 167..168 +| | | | | EndLine 167..168 "\n" +| | | | WhiteSpace 168..176 +| | | | | WhiteSpace 168..176 " " +| | | | StatementList 176..205 +| | | | | AssignStatement 176..199 +| | | | | | Expression 176..184 +| | | | | | | ArrayQuery 176..183 +| | | | | | | | ExpressionAtom 176..180 +| | | | | | | | | Identifier 176..180 +| | | | | | | | | | Identifier 176..180 "comp" +| | | | | | | | LBracket 180..181 +| | | | | | | | | LBracket 180..181 "[" +| | | | | | | | Expression 181..182 +| | | | | | | | | ExpressionAtom 181..182 +| | | | | | | | | | Identifier 181..182 +| | | | | | | | | | | Identifier 181..182 "i" +| | | | | | | | RBracket 182..183 +| | | | | | | | | RBracket 182..183 "]" +| | | | | | | WhiteSpace 183..184 +| | | | | | | | WhiteSpace 183..184 " " +| | | | | | Assign 184..185 +| | | | | | | Assign 184..185 "=" +| | | | | | WhiteSpace 185..186 +| | | | | | | WhiteSpace 185..186 " " +| | | | | | Expression 186..199 +| | | | | | | Call 186..199 +| | | | | | | | ExpressionAtom 186..197 +| | | | | | | | | Identifier 186..197 +| | | | | | | | | | Identifier 186..197 "Multiplier2" +| | | | | | | | LParen 197..198 +| | | | | | | | | LParen 197..198 "(" +| | | | | | | | RParen 198..199 +| | | | | | | | | RParen 198..199 ")" +| | | | | Semicolon 199..200 +| | | | | | Semicolon 199..200 ";" +| | | | | EndLine 200..201 +| | | | | | EndLine 200..201 "\n" +| | | | | WhiteSpace 201..205 +| | | | | | WhiteSpace 201..205 " " +| | | | RCurly 205..206 +| | | | | RCurly 205..206 "}" +| | EndLine 206..207 +| | | EndLine 206..207 "\n" +| | EndLine 207..208 +| | | EndLine 207..208 "\n" +| | WhiteSpace 208..212 +| | | WhiteSpace 208..212 " " +| | CommentLine 212..220 +| | | CommentLine 212..220 "// while" +| | EndLine 220..221 +| | | EndLine 220..221 "\n" +| | WhiteSpace 221..225 +| | | WhiteSpace 221..225 " " +| | WhileLoop 225..275 +| | | WhileKw 225..230 +| | | | WhileKw 225..230 "while" +| | | WhiteSpace 230..231 +| | | | WhiteSpace 230..231 " " +| | | LParen 231..232 +| | | | LParen 231..232 "(" +| | | Expression 232..237 +| | | | LessThan 232..237 +| | | | | Sub 232..235 +| | | | | | ExpressionAtom 232..233 +| | | | | | | Identifier 232..233 +| | | | | | | | Identifier 232..233 "n" +| | | | | | Sub 233..234 +| | | | | | | Sub 233..234 "-" +| | | | | | ExpressionAtom 234..235 +| | | | | | | Number 234..235 +| | | | | | | | Number 234..235 "1" +| | | | | LessThan 235..236 +| | | | | | LessThan 235..236 "<" +| | | | | ExpressionAtom 236..237 +| | | | | | Identifier 236..237 +| | | | | | | Identifier 236..237 "a" +| | | RParen 237..238 +| | | | RParen 237..238 ")" +| | | WhiteSpace 238..239 +| | | | WhiteSpace 238..239 " " +| | | Block 239..275 +| | | | LCurly 239..240 +| | | | | LCurly 239..240 "{" +| | | | EndLine 240..241 +| | | | | EndLine 240..241 "\n" +| | | | WhiteSpace 241..249 +| | | | | WhiteSpace 241..249 " " +| | | | StatementList 249..274 +| | | | | AssignStatement 249..252 +| | | | | | Expression 249..252 +| | | | | | | UnitInc 249..252 +| | | | | | | | ExpressionAtom 249..250 +| | | | | | | | | Identifier 249..250 +| | | | | | | | | | Identifier 249..250 "r" +| | | | | | | | UnitInc 250..252 +| | | | | | | | | UnitInc 250..252 "++" +| | | | | Semicolon 252..253 +| | | | | | Semicolon 252..253 ";" +| | | | | EndLine 253..254 +| | | | | | EndLine 253..254 "\n" +| | | | | WhiteSpace 254..262 +| | | | | | WhiteSpace 254..262 " " +| | | | | AssignStatement 262..268 +| | | | | | Expression 262..264 +| | | | | | | ExpressionAtom 262..263 +| | | | | | | | Identifier 262..263 +| | | | | | | | | Identifier 262..263 "n" +| | | | | | | WhiteSpace 263..264 +| | | | | | | | WhiteSpace 263..264 " " +| | | | | | MulAssign 264..266 +| | | | | | | MulAssign 264..266 "*=" +| | | | | | WhiteSpace 266..267 +| | | | | | | WhiteSpace 266..267 " " +| | | | | | Expression 267..268 +| | | | | | | ExpressionAtom 267..268 +| | | | | | | | Number 267..268 +| | | | | | | | | Number 267..268 "2" +| | | | | Semicolon 268..269 +| | | | | | Semicolon 268..269 ";" +| | | | | EndLine 269..270 +| | | | | | EndLine 269..270 "\n" +| | | | | WhiteSpace 270..274 +| | | | | | WhiteSpace 270..274 " " +| | | | RCurly 274..275 +| | | | | RCurly 274..275 "}" +| | EndLine 275..276 +| | | EndLine 275..276 "\n" +| | EndLine 276..277 +| | | EndLine 276..277 "\n" +| | WhiteSpace 277..281 +| | | WhiteSpace 277..281 " " +| | CommentLine 281..290 +| | | CommentLine 281..290 "// return" +| | EndLine 290..291 +| | | EndLine 290..291 "\n" +| | WhiteSpace 291..295 +| | | WhiteSpace 291..295 " " +| | ReturnStatement 295..303 +| | | ReturnKw 295..301 +| | | | ReturnKw 295..301 "return" +| | | WhiteSpace 301..302 +| | | | WhiteSpace 301..302 " " +| | | Expression 302..303 +| | | | ExpressionAtom 302..303 +| | | | | Identifier 302..303 +| | | | | | Identifier 302..303 "r" +| | Semicolon 303..304 +| | | Semicolon 303..304 ";" +| | EndLine 304..305 +| | | EndLine 304..305 "\n" +| | EndLine 305..306 +| | | EndLine 305..306 "\n" +| | WhiteSpace 306..310 +| | | WhiteSpace 306..310 " " +| | CommentLine 310..316 +| | | CommentLine 310..316 "// log" +| | EndLine 316..317 +| | | EndLine 316..317 "\n" +| | WhiteSpace 317..321 +| | | WhiteSpace 317..321 " " +| | LogStatement 321..342 +| | | LogKw 321..324 +| | | | LogKw 321..324 "log" +| | | LParen 324..325 +| | | | LParen 324..325 "(" +| | | CircomString 325..331 +| | | | CircomString 325..331 "\"hash\"" +| | | Comma 331..332 +| | | | Comma 331..332 "," +| | | WhiteSpace 332..333 +| | | | WhiteSpace 332..333 " " +| | | Expression 333..341 +| | | | ComponentCall 333..341 +| | | | | ExpressionAtom 333..337 +| | | | | | Identifier 333..337 +| | | | | | | Identifier 333..337 "hash" +| | | | | Dot 337..338 +| | | | | | Dot 337..338 "." +| | | | | Identifier 338..341 +| | | | | | Identifier 338..341 "out" +| | | RParen 341..342 +| | | | RParen 341..342 ")" +| | Semicolon 342..343 +| | | Semicolon 342..343 ";" +| | EndLine 343..344 +| | | EndLine 343..344 "\n" +| | EndLine 344..345 +| | | EndLine 344..345 "\n" +| | WhiteSpace 345..349 +| | | WhiteSpace 345..349 " " +| | CommentLine 349..358 +| | | CommentLine 349..358 "// assert" +| | EndLine 358..359 +| | | EndLine 358..359 "\n" +| | WhiteSpace 359..363 +| | | WhiteSpace 359..363 " " +| | AssertStatement 363..376 +| | | AssertKw 363..369 +| | | | AssertKw 363..369 "assert" +| | | LParen 369..370 +| | | | LParen 369..370 "(" +| | | Expression 370..375 +| | | | GreaterThan 370..375 +| | | | | ExpressionAtom 370..371 +| | | | | | Identifier 370..371 +| | | | | | | Identifier 370..371 "a" +| | | | | WhiteSpace 371..372 +| | | | | | WhiteSpace 371..372 " " +| | | | | GreaterThan 372..373 +| | | | | | GreaterThan 372..373 ">" +| | | | | WhiteSpace 373..374 +| | | | | | WhiteSpace 373..374 " " +| | | | | ExpressionAtom 374..375 +| | | | | | Number 374..375 +| | | | | | | Number 374..375 "2" +| | | RParen 375..376 +| | | | RParen 375..376 ")" +| | Semicolon 376..377 +| | | Semicolon 376..377 ";" +| | EndLine 377..378 +| | | EndLine 377..378 "\n" +| | EndLine 378..379 +| | | EndLine 378..379 "\n" +| | WhiteSpace 379..383 +| | | WhiteSpace 379..383 " " +| | CommentLine 383..406 +| | | CommentLine 383..406 "// assignment statement" +| | EndLine 406..407 +| | | EndLine 406..407 "\n" +| | WhiteSpace 407..411 +| | | WhiteSpace 407..411 " " +| | AssignStatement 411..422 +| | | Expression 411..413 +| | | | ExpressionAtom 411..412 +| | | | | Identifier 411..412 +| | | | | | Identifier 411..412 "c" +| | | | WhiteSpace 412..413 +| | | | | WhiteSpace 412..413 " " +| | | RAssignConstraintSignal 413..416 +| | | | RAssignConstraintSignal 413..416 "<==" +| | | WhiteSpace 416..417 +| | | | WhiteSpace 416..417 " " +| | | Expression 417..422 +| | | | Mul 417..422 +| | | | | ExpressionAtom 417..418 +| | | | | | Identifier 417..418 +| | | | | | | Identifier 417..418 "a" +| | | | | WhiteSpace 418..419 +| | | | | | WhiteSpace 418..419 " " +| | | | | Mul 419..420 +| | | | | | Mul 419..420 "*" +| | | | | WhiteSpace 420..421 +| | | | | | WhiteSpace 420..421 " " +| | | | | ExpressionAtom 421..422 +| | | | | | Identifier 421..422 +| | | | | | | Identifier 421..422 "b" +| | Semicolon 422..423 +| | | Semicolon 422..423 ";" +| | EndLine 423..424 +| | | EndLine 423..424 "\n" +| RCurly 424..425 +| | RCurly 424..425 "}" diff --git a/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__template.circom.snap b/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__template.circom.snap index 287ef65..0bdbad0 100644 --- a/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__template.circom.snap +++ b/crates/syntax/src/snapshots/syntax__syntax__tests____src__test_files__happy__template.circom.snap @@ -131,115 +131,112 @@ expression: "crate :: view_syntax :: view_ast(& syntax)" | | | | EndLine 228..230 "\r\n" | | | WhiteSpace 230..242 | | | | WhiteSpace 230..242 " " -| | | Statement 242..328 -| | | | ForLoop 242..328 -| | | | | ForKw 242..245 -| | | | | | ForKw 242..245 "for" -| | | | | LParen 245..246 -| | | | | | LParen 245..246 "(" -| | | | | VarDecl 246..255 -| | | | | | VarKw 246..249 -| | | | | | | VarKw 246..249 "var" -| | | | | | WhiteSpace 249..250 -| | | | | | | WhiteSpace 249..250 " " -| | | | | | VarIdentifier 250..252 -| | | | | | | Identifier 250..251 -| | | | | | | | Identifier 250..251 "i" -| | | | | | | WhiteSpace 251..252 -| | | | | | | | WhiteSpace 251..252 " " -| | | | | | Assign 252..253 -| | | | | | | Assign 252..253 "=" -| | | | | | WhiteSpace 253..254 -| | | | | | | WhiteSpace 253..254 " " -| | | | | | Expression 254..255 -| | | | | | | ExpressionAtom 254..255 -| | | | | | | | Number 254..255 -| | | | | | | | | Number 254..255 "0" -| | | | | Semicolon 255..256 -| | | | | | Semicolon 255..256 ";" -| | | | | WhiteSpace 256..257 -| | | | | | WhiteSpace 256..257 " " -| | | | | Expression 257..264 -| | | | | | LessThan 257..264 -| | | | | | | ExpressionAtom 257..258 -| | | | | | | | Identifier 257..258 -| | | | | | | | | Identifier 257..258 "i" -| | | | | | | WhiteSpace 258..259 -| | | | | | | | WhiteSpace 258..259 " " -| | | | | | | LessThan 259..260 -| | | | | | | | LessThan 259..260 "<" -| | | | | | | WhiteSpace 260..261 -| | | | | | | | WhiteSpace 260..261 " " -| | | | | | | Sub 261..264 -| | | | | | | | ExpressionAtom 261..262 -| | | | | | | | | Identifier 261..262 -| | | | | | | | | | Identifier 261..262 "N" -| | | | | | | | Sub 262..263 -| | | | | | | | | Sub 262..263 "-" -| | | | | | | | ExpressionAtom 263..264 -| | | | | | | | | Number 263..264 -| | | | | | | | | | Number 263..264 "1" -| | | | | Semicolon 264..265 -| | | | | | Semicolon 264..265 ";" -| | | | | WhiteSpace 265..266 -| | | | | | WhiteSpace 265..266 " " -| | | | | AssignStatement 266..269 -| | | | | | Expression 266..269 -| | | | | | | Expression 266..269 -| | | | | | | | ExpressionAtom 266..267 -| | | | | | | | | Identifier 266..267 -| | | | | | | | | | Identifier 266..267 "i" -| | | | | | | | UnitInc 267..269 -| | | | | | | | | UnitInc 267..269 "++" -| | | | | RParen 269..270 -| | | | | | RParen 269..270 ")" -| | | | | Statement 270..328 -| | | | | | Block 270..328 -| | | | | | | LCurly 270..271 -| | | | | | | | LCurly 270..271 "{" -| | | | | | | EndLine 271..273 -| | | | | | | | EndLine 271..273 "\r\n" -| | | | | | | WhiteSpace 273..289 -| | | | | | | | WhiteSpace 273..289 " " -| | | | | | | StatementList 289..327 -| | | | | | | | Statement 289..313 -| | | | | | | | | AssignStatement 289..312 -| | | | | | | | | | Expression 289..297 -| | | | | | | | | | | ArrayQuery 289..296 -| | | | | | | | | | | | ExpressionAtom 289..293 -| | | | | | | | | | | | | Identifier 289..293 -| | | | | | | | | | | | | | Identifier 289..293 "comp" -| | | | | | | | | | | | LBracket 293..294 -| | | | | | | | | | | | | LBracket 293..294 "[" -| | | | | | | | | | | | Expression 294..295 -| | | | | | | | | | | | | ExpressionAtom 294..295 -| | | | | | | | | | | | | | Identifier 294..295 -| | | | | | | | | | | | | | | Identifier 294..295 "i" -| | | | | | | | | | | | RBracket 295..296 -| | | | | | | | | | | | | RBracket 295..296 "]" -| | | | | | | | | | | WhiteSpace 296..297 -| | | | | | | | | | | | WhiteSpace 296..297 " " -| | | | | | | | | | Assign 297..298 -| | | | | | | | | | | Assign 297..298 "=" -| | | | | | | | | | WhiteSpace 298..299 -| | | | | | | | | | | WhiteSpace 298..299 " " -| | | | | | | | | | Expression 299..312 -| | | | | | | | | | | Call 299..312 -| | | | | | | | | | | | ExpressionAtom 299..310 -| | | | | | | | | | | | | Identifier 299..310 -| | | | | | | | | | | | | | Identifier 299..310 "Multiplier2" -| | | | | | | | | | | | LParen 310..311 -| | | | | | | | | | | | | LParen 310..311 "(" -| | | | | | | | | | | | RParen 311..312 -| | | | | | | | | | | | | RParen 311..312 ")" -| | | | | | | | | Semicolon 312..313 -| | | | | | | | | | Semicolon 312..313 ";" -| | | | | | | | EndLine 313..315 -| | | | | | | | | EndLine 313..315 "\r\n" -| | | | | | | | WhiteSpace 315..327 -| | | | | | | | | WhiteSpace 315..327 " " -| | | | | | | RCurly 327..328 -| | | | | | | | RCurly 327..328 "}" +| | | ForLoop 242..328 +| | | | ForKw 242..245 +| | | | | ForKw 242..245 "for" +| | | | LParen 245..246 +| | | | | LParen 245..246 "(" +| | | | VarDecl 246..255 +| | | | | VarKw 246..249 +| | | | | | VarKw 246..249 "var" +| | | | | WhiteSpace 249..250 +| | | | | | WhiteSpace 249..250 " " +| | | | | VarIdentifier 250..252 +| | | | | | Identifier 250..251 +| | | | | | | Identifier 250..251 "i" +| | | | | | WhiteSpace 251..252 +| | | | | | | WhiteSpace 251..252 " " +| | | | | Assign 252..253 +| | | | | | Assign 252..253 "=" +| | | | | WhiteSpace 253..254 +| | | | | | WhiteSpace 253..254 " " +| | | | | Expression 254..255 +| | | | | | ExpressionAtom 254..255 +| | | | | | | Number 254..255 +| | | | | | | | Number 254..255 "0" +| | | | Semicolon 255..256 +| | | | | Semicolon 255..256 ";" +| | | | WhiteSpace 256..257 +| | | | | WhiteSpace 256..257 " " +| | | | Expression 257..264 +| | | | | LessThan 257..264 +| | | | | | ExpressionAtom 257..258 +| | | | | | | Identifier 257..258 +| | | | | | | | Identifier 257..258 "i" +| | | | | | WhiteSpace 258..259 +| | | | | | | WhiteSpace 258..259 " " +| | | | | | LessThan 259..260 +| | | | | | | LessThan 259..260 "<" +| | | | | | WhiteSpace 260..261 +| | | | | | | WhiteSpace 260..261 " " +| | | | | | Sub 261..264 +| | | | | | | ExpressionAtom 261..262 +| | | | | | | | Identifier 261..262 +| | | | | | | | | Identifier 261..262 "N" +| | | | | | | Sub 262..263 +| | | | | | | | Sub 262..263 "-" +| | | | | | | ExpressionAtom 263..264 +| | | | | | | | Number 263..264 +| | | | | | | | | Number 263..264 "1" +| | | | Semicolon 264..265 +| | | | | Semicolon 264..265 ";" +| | | | WhiteSpace 265..266 +| | | | | WhiteSpace 265..266 " " +| | | | AssignStatement 266..269 +| | | | | Expression 266..269 +| | | | | | UnitInc 266..269 +| | | | | | | ExpressionAtom 266..267 +| | | | | | | | Identifier 266..267 +| | | | | | | | | Identifier 266..267 "i" +| | | | | | | UnitInc 267..269 +| | | | | | | | UnitInc 267..269 "++" +| | | | RParen 269..270 +| | | | | RParen 269..270 ")" +| | | | Block 270..328 +| | | | | LCurly 270..271 +| | | | | | LCurly 270..271 "{" +| | | | | EndLine 271..273 +| | | | | | EndLine 271..273 "\r\n" +| | | | | WhiteSpace 273..289 +| | | | | | WhiteSpace 273..289 " " +| | | | | StatementList 289..327 +| | | | | | AssignStatement 289..312 +| | | | | | | Expression 289..297 +| | | | | | | | ArrayQuery 289..296 +| | | | | | | | | ExpressionAtom 289..293 +| | | | | | | | | | Identifier 289..293 +| | | | | | | | | | | Identifier 289..293 "comp" +| | | | | | | | | LBracket 293..294 +| | | | | | | | | | LBracket 293..294 "[" +| | | | | | | | | Expression 294..295 +| | | | | | | | | | ExpressionAtom 294..295 +| | | | | | | | | | | Identifier 294..295 +| | | | | | | | | | | | Identifier 294..295 "i" +| | | | | | | | | RBracket 295..296 +| | | | | | | | | | RBracket 295..296 "]" +| | | | | | | | WhiteSpace 296..297 +| | | | | | | | | WhiteSpace 296..297 " " +| | | | | | | Assign 297..298 +| | | | | | | | Assign 297..298 "=" +| | | | | | | WhiteSpace 298..299 +| | | | | | | | WhiteSpace 298..299 " " +| | | | | | | Expression 299..312 +| | | | | | | | Call 299..312 +| | | | | | | | | ExpressionAtom 299..310 +| | | | | | | | | | Identifier 299..310 +| | | | | | | | | | | Identifier 299..310 "Multiplier2" +| | | | | | | | | LParen 310..311 +| | | | | | | | | | LParen 310..311 "(" +| | | | | | | | | RParen 311..312 +| | | | | | | | | | RParen 311..312 ")" +| | | | | | Semicolon 312..313 +| | | | | | | Semicolon 312..313 ";" +| | | | | | EndLine 313..315 +| | | | | | | EndLine 313..315 "\r\n" +| | | | | | WhiteSpace 315..327 +| | | | | | | WhiteSpace 315..327 " " +| | | | | RCurly 327..328 +| | | | | | RCurly 327..328 "}" | | | EndLine 328..330 | | | | EndLine 328..330 "\r\n" | | | WhiteSpace 330..346 diff --git a/crates/syntax/src/test_files/happy/statements.circom b/crates/syntax/src/test_files/happy/statements.circom new file mode 100644 index 0000000..77da8af --- /dev/null +++ b/crates/syntax/src/test_files/happy/statements.circom @@ -0,0 +1,32 @@ +{ + // if ... else + if(n == 2) { + aux <== 2; + out <== B()(aux); + } else { + out <== 5; + } + + // for + for(var i = 0; i < N-1; i++){ + comp[i] = Multiplier2(); + } + + // while + while (n-1 2); + + // assignment statement + c <== a * b; +} \ No newline at end of file