Releases: prantlf/oscript-parser
Release v0.2.5
Parser
- Allow dereferencing
thiswithout thethiskeyword (chain the dot operators). - Correct typings for
SliceExpression. - Nest the binary expressions according to the binary operator precedence.
Walker 0.1.0
If the recursive walker fails, include the latest visited node in the error.
Interpreter 0.1.0
- Ignore the imaginary operator
^^, recognise the existing one||. - Fix built-in object method lookup.
- Set default values to declared variables.
- Introduce built-in objects
Assoc,ListandRegex. - Add runtime type checking to the built-in functions and object methods.
- Include the last interpreted node in the runtime error report.
- Inline the preparation of AST from an extra preprocessing step to the interpretation phase.
BREAKING CHANGE: The second parameters of interpret is an object with options. The parameter globals has been moved to a property in the options object.
Release v0.2.4
Parser
Remove the operator ~= that does not exist.
Walker 0.0.3
Skip omitted nodes for.init, slice.start and slice.end expressions during walking.
Interpreter 0.0.1
Initial release.
Release v0.2.3
Fix parsing of an incomplete switch statement.
Release v0.2.2
Parser
Fix parsing of the member expression without the explicit this object.
Walker 0.0.2
- Recognize
ObjectExpressionasAssocExpressionfor compatibility. - Fix walking of
consequentandalternateofConditionalExpression.
Release v0.2.1
Fix parsing of the switch statement.
Release v0.2.0
Update the license for the year 2021
Release v0.1.0
Include a new property warnings in the parser output or error, which will contain an array of warnings. A warning is a mistake in the source code, which is not fatal (and will be compiled and executed properly), but which is against the modern language specification. Warn about:
- A line break in a single-line string
- A backslash not followed by a whitespace
- A
ifdeforifndefpreprocessor directive without a name identifier following it - An object declared with other modifier than
public - A preprocessor directive followed by non-whitespace characters
- A semicolon following feature, function or script declaration
- A missing line break or semicolon after an empty c-like for statement before the end keyword
Release v0.0.1
Initial release.
- Command-line tools
osparseandoslint - Functions
parseText,parseTokens,tokenizeandstartTokenization - Typescript typings