Dan Klishch
f7c952f842
JSSpecCompiler: Ignore notes in algorithm steps
2024-02-24 15:03:08 -07:00
Dan Klishch
4d8f74c149
JSSpecCompiler: Parse method headers
2024-02-24 15:03:08 -07:00
Dan Klishch
3e6a07154b
JSSpecCompiler: Parse "the *this* value" in expressions
2024-02-24 15:03:08 -07:00
Dan Klishch
ddf26a768c
JSSpecCompiler: Parse "Perform <expression>." steps
2024-02-24 15:03:08 -07:00
Dan Klishch
d1fc84c638
JSSpecCompiler: Parse accessor property headers
2024-02-24 15:03:08 -07:00
Dan Klishch
a9f3a14a13
JSSpecCompiler: Simplify value handling in TextParser::parse_expression
2024-02-24 15:03:08 -07:00
Dan Klishch
e1a1f4ed1a
JSSpecCompiler: Parse lists in xspec mode
2024-02-24 15:03:08 -07:00
Dan Klishch
d14bb7e91e
JSSpecCompiler: Make function arguments parsing much simpler
...
In a nutshell, when we understand that the expression is a function
call (this happens at '(' after an expression), stop parsing expression
and start parsing function arguments. This makes
`FunctionCallCanonicalizationPass` and the workaround for zero argument
function calls obsolete.
2024-02-24 15:03:08 -07:00
Dan Klishch
94f5086b93
JSSpecCompiler: Remove ParseError
2024-02-08 07:05:13 -07:00
Dan Klishch
6b30c4d2f0
JSSpecCompiler: Issue meaningful errors in TextParser
2024-02-08 07:05:13 -07:00
Dan Klishch
14ee25b8ba
JSSpecCompiler: Make -xspec capable of parsing the whole specification
...
... in theory. In practice, we fail to parse all of the functions.
2024-01-21 14:57:10 -07:00
Dan Klishch
092ed1cc8a
JSSpecCompiler: Allow storing NullableTree
s in nodes
...
And use this in ElseIfBranch node.
2023-09-09 11:20:43 -06:00
Dan Klishch
f70e39d501
JSSpecCompiler: Add TextParser for converting algorithm steps into AST
2023-08-31 11:00:31 +02:00