Skip to content

Releases: prantlf/oscript-parser

Release v0.2.5

11 Jan 01:19
Compare
Choose a tag to compare

Parser

  • Allow dereferencing this without the this keyword (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, List and Regex.
  • 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

10 Jan 01:40
Compare
Choose a tag to compare

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

06 Jan 22:24
Compare
Choose a tag to compare

Fix parsing of an incomplete switch statement.

Release v0.2.2

04 Jan 01:16
Compare
Choose a tag to compare

Parser

Fix parsing of the member expression without the explicit this object.

Walker 0.0.2

  • Recognize ObjectExpression as AssocExpression for compatibility.
  • Fix walking of consequent and alternate of ConditionalExpression.

Release v0.2.1

04 Jan 00:33
Compare
Choose a tag to compare

Fix parsing of the switch statement.

Release v0.2.0

03 Jan 22:40
Compare
Choose a tag to compare
Update the license for the year 2021

Release v0.1.0

29 Dec 00:41
Compare
Choose a tag to compare

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 ifdef or ifndef preprocessor 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

28 Dec 01:09
Compare
Choose a tag to compare

Initial release.

  • Command-line tools osparse and oslint
  • Functions parseText, parseTokens, tokenize and startTokenization
  • Typescript typings