Socket
Socket
Sign inDemoInstall

@lezer/lr

Package Overview
Dependencies
Maintainers
1
Versions
39
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@lezer/lr - npm Package Versions

123

0.15.8

Diff

Changelog

Source

0.15.8 (2022-02-04)

Bug fixes

Fix a bug that caused reductions that didn't consume anything to sometimes end up outside their parent node in the tree.

marijn
published 0.15.7 •

Changelog

Source

0.15.7 (2022-01-21)

Bug fixes

Fix a bug that could cause some kinds of composite skipped expressions to not be parsed correctly.

marijn
published 0.15.6 •

Changelog

Source

0.15.6 (2022-01-11)

Bug fixes

Make sure tree depth does not grow unbounded, so that recursive tree traversal is safe from overflowing the stack.

Be less agressive about pruning long-running GLR parse splits.

marijn
published 0.15.5 •

Changelog

Source

0.15.5 (2021-12-01)

Bug fixes

Fix a bug that caused node lookahead to be one less than it should be.

Fix an issue that could cause the parser to, when recovering, parse beyond the position given to stopAt.

marijn
published 0.15.4 •

Changelog

Source

0.15.4 (2021-09-27)

Bug fixes

Fix a mistake in the way forced reductions are checked.

marijn
published 0.15.3 •

Changelog

Source

0.15.3 (2021-09-24)

Bug fixes

Fix crashes or infinite recursion caused by applying forced reductions in situations where they were not valid.

marijn
published 0.15.2 •

Changelog

Source

0.15.2 (2021-08-31)

Bug fixes

Fix a bug where the parse position could get corrupted during a parse, leading to crashes or nonsensical output.

marijn
published 0.15.1 •

Changelog

Source

0.15.1 (2021-08-16)

Bug fixes

Fix an inconsistency in the .d.ts emitted by the build.

New features

LRParser.configure now takes a contextTracker option to replace the context tracker used by the parser.

marijn
published 0.15.0 •

Changelog

Source

0.15.0 (2021-08-11)

Breaking changes

The module's name changed from lezer to @lezer/lr.

The Parser class was renamed to LRParser (Parser is now the abstract class that all parsers extend).

Nested parsing is no longer handled inside the LR parser (instead, it is done by using parseMixed from the @lezer/common package as a wrapper).

External tokenizers are passed different arguments and get a different input stream abstraction (to make accidental uncontrolled lookahead and lookbehind, which were easy ways to break incremental parsing, harder).

Drops support for Stack.startOf (which is no longer useful without lookbehind).

Context trackers also get passed different arguments, following the changed input stream format.

This package no longer re-exports bindings from @lezer/common.

Bug fixes

Slightly prefer deleting token to inserting them to avoid far-fetched parses.

Fix a problem where node reuse didn't take the amount of look-ahead done by the tokenizer into account, and could reuse nodes whose content would tokenize differently due to changes after them.

Track tokenizer lookahead to fix a problem where some incremental parses would produce incorrect results.

New features

LR parsers now support a wrapper configuration option that allows you to inject additional logic by wrapping the PartialParse object it returns.

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc