1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 22:17:45 +00:00

JSSpecCompiler: Add function call canonicalization pass

It simplifies ladders of BinaryOperators nodes in the function call
arguments into nice and neat FunctionCall node. Ladders initially appear
since I do not want to complicate expression parser, so it interprets
`f(a, b, c, d)` as `f "function_call_operator" (a, (b, (c, d))))`.
This commit is contained in:
Dan Klishch 2023-08-18 13:12:53 -04:00 committed by Andrew Kaster
parent 1c4cd34320
commit 72794e7843
4 changed files with 71 additions and 2 deletions

View file

@ -1,6 +1,7 @@
set(SOURCES
AST/AST.cpp
AST/ASTPrinting.cpp
Compiler/FunctionCallCanonicalizationPass.cpp
Compiler/GenericASTPass.cpp
Parser/Lexer.cpp
Parser/ParseError.cpp