From ac5806631779035c2c1955744a47d8ed4f25a175 Mon Sep 17 00:00:00 2001 From: Shahar Soel Date: Tue, 15 Aug 2023 02:04:37 +0300 Subject: [PATCH] chore(release): release v11.0.3 --- README.md | 4 +- examples/grammars/package.json | 4 +- .../implementation_languages/package.json | 4 +- examples/lexer/package.json | 4 +- examples/parser/package.json | 4 +- examples/tutorial/package.json | 4 +- lerna.json | 2 +- packages/chevrotain/package.json | 12 ++-- packages/chevrotain/src/version.ts | 2 +- packages/cst-dts-gen-test/package.json | 10 +-- packages/cst-dts-gen/package.json | 6 +- packages/gast/package.json | 4 +- packages/regexp-to-ast/package.json | 2 +- packages/types/package.json | 2 +- packages/utils/package.json | 2 +- packages/website/docs/FAQ.md | 2 +- packages/website/docs/changes/CHANGELOG.md | 2 +- .../website/docs/features/custom_errors.md | 12 ++-- packages/website/docs/features/gates.md | 2 +- .../docs/features/grammar_inheritance.md | 4 +- .../docs/features/position_tracking.md | 2 +- .../website/docs/features/token_grouping.md | 2 +- .../docs/guide/concrete_syntax_tree.md | 14 ++-- .../docs/guide/custom_token_patterns.md | 6 +- .../docs/guide/generating_syntax_diagrams.md | 2 +- .../docs/guide/initialization_performance.md | 10 +-- packages/website/docs/guide/internals.md | 12 ++-- packages/website/docs/guide/performance.md | 6 +- .../docs/guide/resolving_grammar_errors.md | 6 +- .../docs/guide/resolving_lexer_errors.md | 10 +-- .../docs/guide/syntactic_content_assist.md | 2 +- .../website/docs/tutorial/step1_lexing.md | 4 +- .../website/docs/tutorial/step2_parsing.md | 22 +++--- .../tutorial/step3a_adding_actions_visitor.md | 2 +- .../step3b_adding_actions_embedded.md | 6 +- .../docs/tutorial/step4_fault_tolerance.md | 14 ++-- packages/website/package.json | 2 +- pnpm-lock.yaml | 70 ++++++++++++++----- 38 files changed, 156 insertions(+), 124 deletions(-) diff --git a/README.md b/README.md index 1ff9fda0c..dd28ca0e0 100644 --- a/README.md +++ b/README.md @@ -36,8 +36,8 @@ A more in depth review of Chevrotain can be found in this great article on: [Par - `https://unpkg.com/chevrotain/lib/chevrotain.mjs` - `https://unpkg.com/chevrotain/lib/chevrotain.min.mjs` - Explicit version number: - - `https://unpkg.com/chevrotain@11.0.2/lib/chevrotain.mjs` - - `https://unpkg.com/chevrotain@11.0.2/lib/chevrotain.min.mjs` + - `https://unpkg.com/chevrotain@11.0.3/lib/chevrotain.mjs` + - `https://unpkg.com/chevrotain@11.0.3/lib/chevrotain.min.mjs` ## Documentation & Resources diff --git a/examples/grammars/package.json b/examples/grammars/package.json index 95d5d400e..25a75d7f1 100644 --- a/examples/grammars/package.json +++ b/examples/grammars/package.json @@ -1,6 +1,6 @@ { "name": "chevrotain_examples_grammars", - "version": "11.0.2", + "version": "11.0.3", "type": "module", "scripts": { "ci": "pnpm run test && pnpm run bundle:graphql", @@ -9,7 +9,7 @@ }, "dependencies": { "acorn": "8.8.0", - "chevrotain": "11.0.2", + "chevrotain": "11.0.3", "xregexp": "5.1.1" }, "devDependencies": { diff --git a/examples/implementation_languages/package.json b/examples/implementation_languages/package.json index 2d89ab044..a138cf0f6 100644 --- a/examples/implementation_languages/package.json +++ b/examples/implementation_languages/package.json @@ -1,6 +1,6 @@ { "name": "chevrotain_examples_implementation_languages", - "version": "11.0.2", + "version": "11.0.3", "type": "module", "scripts": { "ci": "pnpm run build test", @@ -9,7 +9,7 @@ "test": "mocha \"*spec.js\"" }, "dependencies": { - "chevrotain": "11.0.2" + "chevrotain": "11.0.3" }, "devDependencies": { "coffee-script": "^1.11.1", diff --git a/examples/lexer/package.json b/examples/lexer/package.json index 209a85450..f1aa4a07e 100644 --- a/examples/lexer/package.json +++ b/examples/lexer/package.json @@ -1,13 +1,13 @@ { "name": "chevrotain_examples_lexer", - "version": "11.0.2", + "version": "11.0.3", "type": "module", "scripts": { "ci": "pnpm run test", "test": "mocha \"!(node_modules)/**/*spec.js\"" }, "dependencies": { - "chevrotain": "11.0.2", + "chevrotain": "11.0.3", "lodash": "4.17.21" }, "private": true diff --git a/examples/parser/package.json b/examples/parser/package.json index 36184f81b..b9844f4d7 100644 --- a/examples/parser/package.json +++ b/examples/parser/package.json @@ -1,6 +1,6 @@ { "name": "chevrotain_examples_parser", - "version": "11.0.2", + "version": "11.0.3", "type": "module", "scripts": { "ci": "pnpm run test", @@ -8,7 +8,7 @@ "bundle:diagrams": "esbuild ./diagrams/grammar.js --bundle --minify --format=esm --outfile=./diagrams/gen/grammar-bundled.min.mjs" }, "dependencies": { - "chevrotain": "11.0.2", + "chevrotain": "11.0.3", "lodash": "4.17.21" }, "devDependencies": { diff --git a/examples/tutorial/package.json b/examples/tutorial/package.json index 7c08f1932..4576578bb 100644 --- a/examples/tutorial/package.json +++ b/examples/tutorial/package.json @@ -1,13 +1,13 @@ { "name": "chevrotain_examples_tutorial", - "version": "11.0.2", + "version": "11.0.3", "type": "module", "scripts": { "ci": "pnpm run test", "test": "mocha \"step*/*spec.js\"" }, "dependencies": { - "chevrotain": "11.0.2", + "chevrotain": "11.0.3", "lodash": "4.17.21" }, "private": true diff --git a/lerna.json b/lerna.json index 521abc55c..d5386efec 100644 --- a/lerna.json +++ b/lerna.json @@ -6,5 +6,5 @@ "exact": true } }, - "version": "11.0.2" + "version": "11.0.3" } diff --git a/packages/chevrotain/package.json b/packages/chevrotain/package.json index 9c4c1bf64..f5303e17d 100644 --- a/packages/chevrotain/package.json +++ b/packages/chevrotain/package.json @@ -1,6 +1,6 @@ { "name": "chevrotain", - "version": "11.0.2", + "version": "11.0.3", "description": "Chevrotain is a high performance fault tolerant javascript parsing DSL for building recursive decent parsers", "keywords": [ "parser", @@ -67,11 +67,11 @@ "bundle:esm:min": "esbuild ./lib/src/api.js --bundle --minify --format=esm --sourcemap --outfile=lib/chevrotain.min.mjs" }, "dependencies": { - "@chevrotain/cst-dts-gen": "11.0.2", - "@chevrotain/gast": "11.0.2", - "@chevrotain/regexp-to-ast": "11.0.2", - "@chevrotain/types": "11.0.2", - "@chevrotain/utils": "11.0.2", + "@chevrotain/cst-dts-gen": "11.0.3", + "@chevrotain/gast": "11.0.3", + "@chevrotain/regexp-to-ast": "11.0.3", + "@chevrotain/types": "11.0.3", + "@chevrotain/utils": "11.0.3", "lodash-es": "4.17.21" }, "devDependencies": { diff --git a/packages/chevrotain/src/version.ts b/packages/chevrotain/src/version.ts index cf5bb41c5..a6dd64e5c 100644 --- a/packages/chevrotain/src/version.ts +++ b/packages/chevrotain/src/version.ts @@ -1,4 +1,4 @@ // needs a separate module as this is required inside chevrotain productive code // and also in the entry point for webpack(api.ts). // A separate file avoids cyclic dependencies and webpack errors. -export const VERSION = "11.0.2"; +export const VERSION = "11.0.3"; diff --git a/packages/cst-dts-gen-test/package.json b/packages/cst-dts-gen-test/package.json index 1582a8796..1cbe3c45a 100644 --- a/packages/cst-dts-gen-test/package.json +++ b/packages/cst-dts-gen-test/package.json @@ -1,6 +1,6 @@ { "name": "@chevrotain/cst-dts-gen-test", - "version": "11.0.2", + "version": "11.0.3", "private": true, "description": "tests for @chevrotain/cst-dts-gen", "license": "Apache-2.0", @@ -23,10 +23,10 @@ "coverage": "c8 mocha --enable-source-maps" }, "dependencies": { - "@chevrotain/cst-dts-gen": "11.0.2", - "@chevrotain/gast": "11.0.2", - "@chevrotain/types": "11.0.2", - "chevrotain": "11.0.2", + "@chevrotain/cst-dts-gen": "11.0.3", + "@chevrotain/gast": "11.0.3", + "@chevrotain/types": "11.0.3", + "chevrotain": "11.0.3", "lodash-es": "4.17.21" }, "devDependencies": { diff --git a/packages/cst-dts-gen/package.json b/packages/cst-dts-gen/package.json index 5f54467a1..da5785843 100644 --- a/packages/cst-dts-gen/package.json +++ b/packages/cst-dts-gen/package.json @@ -1,6 +1,6 @@ { "name": "@chevrotain/cst-dts-gen", - "version": "11.0.2", + "version": "11.0.3", "description": "Generates type definitions for Chevrotain CST nodes", "keywords": [], "bugs": { @@ -36,8 +36,8 @@ "compile": "tsc" }, "dependencies": { - "@chevrotain/gast": "11.0.2", - "@chevrotain/types": "11.0.2", + "@chevrotain/gast": "11.0.3", + "@chevrotain/types": "11.0.3", "lodash-es": "4.17.21" }, "devDependencies": { diff --git a/packages/gast/package.json b/packages/gast/package.json index 64af696c1..f4546c7cd 100644 --- a/packages/gast/package.json +++ b/packages/gast/package.json @@ -1,6 +1,6 @@ { "name": "@chevrotain/gast", - "version": "11.0.2", + "version": "11.0.3", "description": "Grammar AST structure for Chevrotain Parsers", "keywords": [], "bugs": { @@ -39,7 +39,7 @@ "coverage": "c8 mocha --enable-source-maps" }, "dependencies": { - "@chevrotain/types": "11.0.2", + "@chevrotain/types": "11.0.3", "lodash-es": "4.17.21" }, "devDependencies": { diff --git a/packages/regexp-to-ast/package.json b/packages/regexp-to-ast/package.json index 89f2ad1a4..e18fb8923 100644 --- a/packages/regexp-to-ast/package.json +++ b/packages/regexp-to-ast/package.json @@ -1,6 +1,6 @@ { "name": "@chevrotain/regexp-to-ast", - "version": "11.0.2", + "version": "11.0.3", "description": "Parses a Regular Expression and outputs an AST", "keywords": [ "regExp", diff --git a/packages/types/package.json b/packages/types/package.json index fae0a1bdc..a26f681e5 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@chevrotain/types", - "version": "11.0.2", + "version": "11.0.3", "description": "Type Signatures and API Website for Chevrotain", "keywords": [], "bugs": { diff --git a/packages/utils/package.json b/packages/utils/package.json index b1b5a7a13..292a43793 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -1,6 +1,6 @@ { "name": "@chevrotain/utils", - "version": "11.0.2", + "version": "11.0.3", "description": "common utilities", "keywords": [], "bugs": { diff --git a/packages/website/docs/FAQ.md b/packages/website/docs/FAQ.md index 91cc3ad40..d29c061d5 100644 --- a/packages/website/docs/FAQ.md +++ b/packages/website/docs/FAQ.md @@ -111,7 +111,7 @@ Special handling is no longer needed during WebPacking scenarios. The first time a Chevrotain parser is initialized additional validations and computations are performed. Some of these can take a very long time under certain edge cases. Specifically the detection of ambiguous alternatives -when the parser uses a larger than the default [maxLookahead](https://chevrotain.io/documentation/11_0_2/interfaces/IParserConfig.html) +when the parser uses a larger than the default [maxLookahead](https://chevrotain.io/documentation/11_0_3/interfaces/IParserConfig.html) and there are many (thousands) of ambiguous paths. To resolve this try reducing the maxLookahead and inspect the ambiguity errors to fix diff --git a/packages/website/docs/changes/CHANGELOG.md b/packages/website/docs/changes/CHANGELOG.md index 0d48bfbb3..fef2e7734 100644 --- a/packages/website/docs/changes/CHANGELOG.md +++ b/packages/website/docs/changes/CHANGELOG.md @@ -1,4 +1,4 @@ -## X.Y.Z (INSERT_DATE_HERE) +## 11.0.3 (8-15-2023) #### Bug Fixes diff --git a/packages/website/docs/features/custom_errors.md b/packages/website/docs/features/custom_errors.md index 27d6996f3..28e7f5b88 100644 --- a/packages/website/docs/features/custom_errors.md +++ b/packages/website/docs/features/custom_errors.md @@ -3,8 +3,8 @@ Chevrotain allows users to customize both the parser and lexer error messages. This can be accomplished by implementing the following interfaces: -- [IParserErrorMessageProvider](https://chevrotain.io/documentation/11_0_2/interfaces/IParserErrorMessageProvider.html) -- [ILexerErrorMessageProvider](https://chevrotain.io/documentation/11_0_2/interfaces/ILexerErrorMessageProvider.html) +- [IParserErrorMessageProvider](https://chevrotain.io/documentation/11_0_3/interfaces/IParserErrorMessageProvider.html) +- [ILexerErrorMessageProvider](https://chevrotain.io/documentation/11_0_3/interfaces/ILexerErrorMessageProvider.html) See executable examples: @@ -25,7 +25,7 @@ $.RULE("myStatement", () => { The **ERR_MSG** config property is available for the following DSL methods: -- [CONSUME](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#CONSUME) -- [OR](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#OR) -- [AT_LEAST_ONE](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#AT_LEAST_ONE) -- [AT_LEAST_ONE_SEP](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#AT_LEAST_ONE_SEP) +- [CONSUME](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#CONSUME) +- [OR](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#OR) +- [AT_LEAST_ONE](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#AT_LEAST_ONE) +- [AT_LEAST_ONE_SEP](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#AT_LEAST_ONE_SEP) diff --git a/packages/website/docs/features/gates.md b/packages/website/docs/features/gates.md index e132066ec..733d0d222 100644 --- a/packages/website/docs/features/gates.md +++ b/packages/website/docs/features/gates.md @@ -20,7 +20,7 @@ $.RULE("Value", (isConst) => { }); ``` -Using the [Look Ahead](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#LA) method is often helpful with the use of Gates to determine if a path should be followed or not, for example: +Using the [Look Ahead](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#LA) method is often helpful with the use of Gates to determine if a path should be followed or not, for example: ```javascript // SELECT LIMIT.ID FROM USER_LIMIT LIMIT diff --git a/packages/website/docs/features/grammar_inheritance.md b/packages/website/docs/features/grammar_inheritance.md index 0daec7413..a9bcc41b2 100644 --- a/packages/website/docs/features/grammar_inheritance.md +++ b/packages/website/docs/features/grammar_inheritance.md @@ -4,8 +4,8 @@ Chevrotain supports Grammar Inheritance, This is useful to represent multiple va for example a grammar for ECMAScript 6 **extends** an ECMAScript 5.1 grammar. Chevrotain Grammars are JavaScript classes, so Grammar inheritance is simply JavaScript inheritance -with the replacement of the [**RULE**](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#RULE) -DSL method with [**OVERRIDE_RULE**](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#OVERRIDE_RULE) method when needed. +with the replacement of the [**RULE**](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#RULE) +DSL method with [**OVERRIDE_RULE**](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#OVERRIDE_RULE) method when needed. See [executable example](https://github.com/chevrotain/chevrotain/tree/master/examples/parser/inheritance) for further details. diff --git a/packages/website/docs/features/position_tracking.md b/packages/website/docs/features/position_tracking.md index c8b694611..583d5febf 100644 --- a/packages/website/docs/features/position_tracking.md +++ b/packages/website/docs/features/position_tracking.md @@ -10,7 +10,7 @@ token_skipping - start and end lines. - start and end columns. -The level of position information tracking can be reduced by using the [**positionTracking**](https://chevrotain.io/documentation/11_0_2/interfaces/ILexerConfig.html#positionTracking) lexer config option. +The level of position information tracking can be reduced by using the [**positionTracking**](https://chevrotain.io/documentation/11_0_3/interfaces/ILexerConfig.html#positionTracking) lexer config option. For example: ```javascript diff --git a/packages/website/docs/features/token_grouping.md b/packages/website/docs/features/token_grouping.md index 9d9eb0f89..6aabd733c 100644 --- a/packages/website/docs/features/token_grouping.md +++ b/packages/website/docs/features/token_grouping.md @@ -3,7 +3,7 @@ Chevrotain lexers support grouping Tokens Types **separately** from the main token vector in the lexing result. This is often useful to **collect** a specific set of Token Types for later processing, for example to collect comments tokens. -To group a Token Type simply specify the [**group**](https://chevrotain.io/documentation/11_0_2/interfaces/ITokenConfig.html#group) property in its configuration. +To group a Token Type simply specify the [**group**](https://chevrotain.io/documentation/11_0_3/interfaces/ITokenConfig.html#group) property in its configuration. For example: ```javascript diff --git a/packages/website/docs/guide/concrete_syntax_tree.md b/packages/website/docs/guide/concrete_syntax_tree.md index dfa84e039..ea4f06f4a 100644 --- a/packages/website/docs/guide/concrete_syntax_tree.md +++ b/packages/website/docs/guide/concrete_syntax_tree.md @@ -29,7 +29,7 @@ There are two major differences. How to enable CST output? -This feature is enabled when a parser extends the [CstParser class](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html). +This feature is enabled when a parser extends the [CstParser class](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html). ```typescript import { CstParser } from "chevrotain"; @@ -45,7 +45,7 @@ class SelectParser extends CstParser { The structure of the CST is very simple. -- See the full [CstNode type signature](https://chevrotain.io/documentation/11_0_2/interfaces/CstNode.html) +- See the full [CstNode type signature](https://chevrotain.io/documentation/11_0_3/interfaces/CstNode.html) - Explore it by running the CST creation example in the [**online playground**](https://chevrotain.io/playground/?example=JSON%20grammar%20and%20automatic%20CST%20output). @@ -238,7 +238,7 @@ as we would have to fully traverse a CstNode to understands its full location ra The feature for providing CstNode location directly on the CstNodes objects is available since version 4.7.0. Tracking the CstNodes location is **disabled by default** and can be enabled -by setting the IParserConfig [nodeLocationTracking](https://chevrotain.io/documentation/11_0_2/interfaces/IParserConfig.html#nodeLocationTracking) +by setting the IParserConfig [nodeLocationTracking](https://chevrotain.io/documentation/11_0_3/interfaces/IParserConfig.html#nodeLocationTracking) to: - "full" (start/end for **all** offset/line/column) @@ -258,14 +258,14 @@ class SelectParser extends CstParser { } ``` -Once this feature is enabled the optional [location property](https://chevrotain.io/documentation/11_0_2/interfaces/CstNode.html#location) +Once this feature is enabled the optional [location property](https://chevrotain.io/documentation/11_0_3/interfaces/CstNode.html#location) on each CstNode would be populated with the relevant information. Caveats - In order to track the CstNodes location **every** Token in the input Token vector must include its own location information. - - This is enabled by default in the Chevrotain Lexer, See [ILexerConfig.positionTracking](https://chevrotain.io/documentation/11_0_2/interfaces/ILexerConfig.html#positionTracking). + - This is enabled by default in the Chevrotain Lexer, See [ILexerConfig.positionTracking](https://chevrotain.io/documentation/11_0_3/interfaces/ILexerConfig.html#positionTracking). However, if a third party Lexer is used in conjunction with a Chevrotain Parser, the Tokens produced by such a lexer must include the relevant location properties to allow the chevrotain parser to compute the CstNode locations. @@ -479,7 +479,7 @@ But what if we want **explicit** definitions for these data structures and APIs? - For example to easily implement our CST Visitors in TypeScript instead of over-using the `any` type... -This capability is provided via the [generateCstDts](https://chevrotain.io/documentation/11_0_2/modules.html#generateCstDts) function. +This capability is provided via the [generateCstDts](https://chevrotain.io/documentation/11_0_3/modules.html#generateCstDts) function. Which given a set of grammar `Rules` will generate the **source text** for the corresponding TypeScript signatures. For example, given the Parser rules for **arrays** in JSON. @@ -515,7 +515,7 @@ export type ArrayCstChildren = { }; ``` -Note that the [generateCstDts](https://chevrotain.io/documentation/11_0_2/modules.html#generateCstDts) function +Note that the [generateCstDts](https://chevrotain.io/documentation/11_0_3/modules.html#generateCstDts) function only produces the **source text** of the TypeScript signatures, and it is the end-user's responsibility to save the contents to a file, see: minimal [generation script example](https://github.com/Chevrotain/chevrotain/tree/master/examples/implementation_languages/typescript/scripts/gen_dts_signatures.js). diff --git a/packages/website/docs/guide/custom_token_patterns.md b/packages/website/docs/guide/custom_token_patterns.md index f9bcdfb6c..37f6cffb9 100644 --- a/packages/website/docs/guide/custom_token_patterns.md +++ b/packages/website/docs/guide/custom_token_patterns.md @@ -34,7 +34,7 @@ function. But with a small constraint. - A custom pattern should behave as though the RegExp [sticky flag](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/sticky) has been set. This means that attempted matches must begin at the offset argument, **not** at the start of the input. -The basic syntax for supplying a custom pattern is defined by the [ICustomPattern](https://chevrotain.io/documentation/11_0_2/interfaces/ICustomPattern.html) interface. +The basic syntax for supplying a custom pattern is defined by the [ICustomPattern](https://chevrotain.io/documentation/11_0_3/interfaces/ICustomPattern.html) interface. Example: ```javascript @@ -62,7 +62,7 @@ createToken({ pattern: { exec: matchInteger }, // Optional property that will enable optimizations in the lexer - // See: https://chevrotain.io/documentation/11_0_2/interfaces/ITokenConfig.html#start_chars_hint + // See: https://chevrotain.io/documentation/11_0_3/interfaces/ITokenConfig.html#start_chars_hint start_chars_hint: ["1", "2", "3", "4", "5", "6", "7", "8", "9"], }); ``` @@ -99,7 +99,7 @@ function matchInteger(text, offset, matchedTokens, groups) { A larger and non contrived example can seen here: [Lexing Python like indentation using Chevrotain](https://github.com/chevrotain/chevrotain/blob/master/examples/lexer/python_indentation/python_indentation.js). -It is important to note that The matchedTokens and groups arguments match the token and groups properties of the tokenize output ([ILexingResult](https://chevrotain.io/documentation/11_0_2/interfaces/ILexingResult.html)). +It is important to note that The matchedTokens and groups arguments match the token and groups properties of the tokenize output ([ILexingResult](https://chevrotain.io/documentation/11_0_3/interfaces/ILexingResult.html)). These arguments are the current state of the lexing result so even if the lexer has performed error recovery any tokens found in those arguments are still guaranteed to be in the final result. diff --git a/packages/website/docs/guide/generating_syntax_diagrams.md b/packages/website/docs/guide/generating_syntax_diagrams.md index c2e630783..d0cb4cd14 100644 --- a/packages/website/docs/guide/generating_syntax_diagrams.md +++ b/packages/website/docs/guide/generating_syntax_diagrams.md @@ -19,7 +19,7 @@ library by @tabatkins. ## Instructions -Chevrotain provides the [**createSyntaxDiagramsCode**](https://chevrotain.io/documentation/11_0_2/modules.html#createsyntaxdiagramscode) API to generate the **html source code** +Chevrotain provides the [**createSyntaxDiagramsCode**](https://chevrotain.io/documentation/11_0_3/modules.html#createsyntaxdiagramscode) API to generate the **html source code** of syntax diagrams. This html source code can then be used by an end user in either node.js or a browser: 1. By writing it directly to the disk in a pure node.js runtime scenario. diff --git a/packages/website/docs/guide/initialization_performance.md b/packages/website/docs/guide/initialization_performance.md index 86b415ba8..e9633ca04 100644 --- a/packages/website/docs/guide/initialization_performance.md +++ b/packages/website/docs/guide/initialization_performance.md @@ -7,7 +7,7 @@ In some use cases this overhead may need to be reduced as much as possible. ## Enabling Initialization Performance Tracing Measuring a Parser's initialization performance can be done by enabling the -[`IParserConfig.traceInitPerf`](https://chevrotain.io/documentation/11_0_2/interfaces/IParserConfig.html#traceInitPerf) +[`IParserConfig.traceInitPerf`](https://chevrotain.io/documentation/11_0_3/interfaces/IParserConfig.html#traceInitPerf) flag. For example: ```javascript @@ -26,7 +26,7 @@ new InitTracingParser(); // Will print tracing info to the console. ``` A Lexer's initialization performance can similarly be measured by enabling the -[`ILexerConfig.traceInitPerf`](https://chevrotain.io/documentation/11_0_2/interfaces/ILexerConfig.html#traceInitPerf) +[`ILexerConfig.traceInitPerf`](https://chevrotain.io/documentation/11_0_3/interfaces/ILexerConfig.html#traceInitPerf) flag: ```javascript @@ -43,7 +43,7 @@ Chevrotain is a K tokens lookahead Parser, this means it peeks ahead (at most) K determine the alternative to pick whenever it encounters a "branching" in the grammar. During initialization Chevrotain pre-computes and caches lookahead functions that would -later be used at runtime. The global [maxLookahead](https://chevrotain.io/documentation/11_0_2/interfaces/IParserConfig.html#maxLookAhead) +later be used at runtime. The global [maxLookahead](https://chevrotain.io/documentation/11_0_3/interfaces/IParserConfig.html#maxLookAhead) setting can significantly affect the performance of this pre-computation due to the fact the number of possible "paths" in the grammar can grow **exponentially** as the max length of the possible paths increases. @@ -103,7 +103,7 @@ class LowLookaheadParser extends CstParser { Chevrotain performs many validations during Lexer & Parser initialization, however those are not really relevant when the Lexer & Parser are known to be valid, These validations are a **development time** tool, and not really needed during productive flows. -The [IParserConfig.skipValidations](https://chevrotain.io/documentation/11_0_2/interfaces/IParserConfig.html#skipValidations) +The [IParserConfig.skipValidations](https://chevrotain.io/documentation/11_0_3/interfaces/IParserConfig.html#skipValidations) config property can be used to avoid running these validations during **Parser** initialization. ```javascript @@ -119,7 +119,7 @@ class NaiveSkippedValidationsParser extends CstParser { } ``` -Similarly the [ILexerConfig.skipValidations](https://chevrotain.io/documentation/11_0_2/interfaces/ILexerConfig.html#skipValidations) +Similarly the [ILexerConfig.skipValidations](https://chevrotain.io/documentation/11_0_3/interfaces/ILexerConfig.html#skipValidations) config property can be used to skip the optional validations during **Lexer** initialization. ```javascript diff --git a/packages/website/docs/guide/internals.md b/packages/website/docs/guide/internals.md index 00d1be363..8b5302d6f 100644 --- a/packages/website/docs/guide/internals.md +++ b/packages/website/docs/guide/internals.md @@ -8,7 +8,7 @@ and at some point understand the implementation details may become necessary. #### TLDR Wrap any semantic actions that cause runtime errors during the recording phase -or have global side effects with the [ACTION DSL method](https://chevrotain.io/documentation/11_0_2/classes/BaseParser.html#ACTION) to +or have global side effects with the [ACTION DSL method](https://chevrotain.io/documentation/11_0_3/classes/BaseParser.html#ACTION) to resolve issues. ### The Problem @@ -40,7 +40,7 @@ $.RULE("value", () => { Chevrotain solves the problem of "understanding" the grammar structure by running the Parser in a "Recording Mode" with **alternative implementations** of the parsing methods (OR/MANY/OPTION/...), the results of these "recordings" are saved -on the Parser instance and are accessible via the [getGastProductions](https://chevrotain.io/documentation/11_0_2/classes/BaseParser.html#getGAstProductions) +on the Parser instance and are accessible via the [getGastProductions](https://chevrotain.io/documentation/11_0_3/classes/BaseParser.html#getGAstProductions) method. However for this to work successfully there are a couple of implicit assumptions.. ### Assumption 1 - The Parser won't throw errors during recording. @@ -163,7 +163,7 @@ class JsonParser extends CstParser { #### The Solution The solution is to simply **avoid executing any code that could raise such exceptions during the recording phase**. -This can be easily accomplished by wrapping the relevant semantic actions with the [ACTION DSL method](https://chevrotain.io/documentation/11_0_2/classes/BaseParser.html#ACTION) +This can be easily accomplished by wrapping the relevant semantic actions with the [ACTION DSL method](https://chevrotain.io/documentation/11_0_3/classes/BaseParser.html#ACTION) for example lets resolve the two scenarios shown above: ```javascript @@ -256,7 +256,7 @@ console.log(counter); // -> 1 #### Solutions As before one of the solutions will be to wrap the relevant embedded semantic action using the -[ACTION DSL method](https://chevrotain.io/documentation/11_0_2/classes/BaseParser.html#ACTION). +[ACTION DSL method](https://chevrotain.io/documentation/11_0_3/classes/BaseParser.html#ACTION). This is normally most suitable for handling **global state** outside the Parser's instance. ```javascript @@ -270,7 +270,7 @@ $.RULE("myRule", () => { ``` Because we are dealing with state here there is another option which is to override the Parser's -[reset method](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#reset). +[reset method](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#reset). This is normally suitable for state that needs to be reset every time **new input** provided to the parser. ```javascript @@ -302,4 +302,4 @@ Due to the execution of the Parser rules during the "recording phase". Some break points inside Chevrotain Parsers will be hit during the Parser's initialization. It is possible to workaround this issue by using **conditional breakpoints** that inspect that the -[RECORDING_PHASE flag](https://chevrotain.io/documentation/11_0_2/classes/BaseParser.html#RECORDING_PHASE) is disabled. +[RECORDING_PHASE flag](https://chevrotain.io/documentation/11_0_3/classes/BaseParser.html#RECORDING_PHASE) is disabled. diff --git a/packages/website/docs/guide/performance.md b/packages/website/docs/guide/performance.md index 1cac93682..81966c1c2 100644 --- a/packages/website/docs/guide/performance.md +++ b/packages/website/docs/guide/performance.md @@ -31,7 +31,7 @@ Avoiding the creation of new instances is important to avoid re-paying the Parse Additionally, re-using the same instance may leverage hot-spot optimizations of the respective JavaScript engine. Note that this means that if your parser "carries" additional state, that state should also be reset. -Simply override the Parser's [reset](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#reset) method +Simply override the Parser's [reset](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#reset) method to accomplish that. ## Ensuring Lexer Optimizations @@ -46,7 +46,7 @@ To apply this optimization the first possible charCodes for **every** TokenType Sometimes a TokenType's first charCodes cannot be automatically identified. In that case the lexer will **silently** revert to using the unoptimized algorithms. -If the TokenType's first charCodes cannot be automatically identified, you can set the [`start_chars_hint`](https://chevrotain.io/documentation/11_0_2/interfaces/ITokenConfig.html#start_chars_hint) property when calling `createToken()`. If you define a custom [pattern](https://chevrotain.io/documentation/11_0_2/interfaces/ITokenConfig.html#pattern) for your token, then you should set `start_chars_hint` manually for optimal performance. +If the TokenType's first charCodes cannot be automatically identified, you can set the [`start_chars_hint`](https://chevrotain.io/documentation/11_0_3/interfaces/ITokenConfig.html#start_chars_hint) property when calling `createToken()`. If you define a custom [pattern](https://chevrotain.io/documentation/11_0_3/interfaces/ITokenConfig.html#pattern) for your token, then you should set `start_chars_hint` manually for optimal performance. It is possible to configure the Lexer **throw** an error in case the optimizations cannot be enabled by turning on the @@ -170,7 +170,7 @@ It is important to note that: These are only required if you are trying to squeeze every tiny bit of performance out of your parser. 1. **Reduce the amount of Token position tracking** the lexer performs. - See The [ILexerConfig.positionTracking](https://chevrotain.io/documentation/11_0_2/interfaces/ILexerConfig.html) property. + See The [ILexerConfig.positionTracking](https://chevrotain.io/documentation/11_0_3/interfaces/ILexerConfig.html) property. 2. **Avoid creating parsing rules which only parse a single Terminal.** diff --git a/packages/website/docs/guide/resolving_grammar_errors.md b/packages/website/docs/guide/resolving_grammar_errors.md index 024a3b310..50d5d60d3 100644 --- a/packages/website/docs/guide/resolving_grammar_errors.md +++ b/packages/website/docs/guide/resolving_grammar_errors.md @@ -68,7 +68,7 @@ due to performance and grammar complexity reasons. From a performance perspective this is particularly problematic as some analysis done on the grammar (during initialization) may become **exponentially** more complex as the maxLookahead grows. -We could also specify the [MAX_LOOKAHEAD](https://chevrotain.io/documentation/11_0_2/interfaces/OrMethodOpts.html#IGNORE_AMBIGUITIES) +We could also specify the [MAX_LOOKAHEAD](https://chevrotain.io/documentation/11_0_3/interfaces/OrMethodOpts.html#IGNORE_AMBIGUITIES) config on the **specific** DSL method invocation where the problem occurs, This is still not the optimal solution in this case. **_The recommended solution in this case would be to refactor the grammar to require a smaller lookahead_**. @@ -201,5 +201,5 @@ For example: ]); ``` -[maxlookahead]: https://chevrotain.io/documentation/11_0_2/interfaces/IParserConfig.html#maxLookAhead -[ignore_ambiguities]: https://chevrotain.io/documentation/11_0_2/interfaces/OrMethodOpts.html#IGNORE_AMBIGUITIES +[maxlookahead]: https://chevrotain.io/documentation/11_0_3/interfaces/IParserConfig.html#maxLookAhead +[ignore_ambiguities]: https://chevrotain.io/documentation/11_0_3/interfaces/OrMethodOpts.html#IGNORE_AMBIGUITIES diff --git a/packages/website/docs/guide/resolving_lexer_errors.md b/packages/website/docs/guide/resolving_lexer_errors.md index 97d6ba6bc..455d45d8b 100644 --- a/packages/website/docs/guide/resolving_lexer_errors.md +++ b/packages/website/docs/guide/resolving_lexer_errors.md @@ -360,13 +360,13 @@ const myLexer = new chevrotain.Lexer([], { }); ``` -[position_tracking]: https://chevrotain.io/documentation/11_0_2/interfaces/ILexerConfig.html#positionTracking -[line_terminator_docs]: https://chevrotain.io/documentation/11_0_2/interfaces/ILexerConfig.html#lineTerminatorsPattern -[start_chars_hint]: https://chevrotain.io/documentation/11_0_2/interfaces/ITokenConfig.html#start_chars_hint +[position_tracking]: https://chevrotain.io/documentation/11_0_3/interfaces/ILexerConfig.html#positionTracking +[line_terminator_docs]: https://chevrotain.io/documentation/11_0_3/interfaces/ILexerConfig.html#lineTerminatorsPattern +[start_chars_hint]: https://chevrotain.io/documentation/11_0_3/interfaces/ITokenConfig.html#start_chars_hint [keywords_idents]: https://github.com/chevrotain/chevrotain/blob/master/examples/lexer/keywords_vs_identifiers/keywords_vs_identifiers.js [mdn_char_code]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/charCodeAt [regexp_to_ast]: https://github.com/bd82/regexp-to-ast [unicode_mdn]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/unicode [custom_token_patterns]: https://chevrotain.io/docs/guide/custom_token_patterns.html -[line_terminator_pattern]: https://chevrotain.io/documentation/11_0_2/interfaces/ILexerConfig.html#lineTerminatorsPattern -[line_terminator_characters]: https://chevrotain.io/documentation/11_0_2/interfaces/ILexerConfig.html#lineTerminatorCharacters +[line_terminator_pattern]: https://chevrotain.io/documentation/11_0_3/interfaces/ILexerConfig.html#lineTerminatorsPattern +[line_terminator_characters]: https://chevrotain.io/documentation/11_0_3/interfaces/ILexerConfig.html#lineTerminatorCharacters diff --git a/packages/website/docs/guide/syntactic_content_assist.md b/packages/website/docs/guide/syntactic_content_assist.md index 7f0c3c7ee..f72b19577 100644 --- a/packages/website/docs/guide/syntactic_content_assist.md +++ b/packages/website/docs/guide/syntactic_content_assist.md @@ -10,7 +10,7 @@ for quick starting, see: ## Introduction Chevrotain provides Syntactic Content assist Capabilities. -These can be accessed via the [**computeContentAssist**](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#computeContentAssist) method. +These can be accessed via the [**computeContentAssist**](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#computeContentAssist) method. Note that this feature **only** provides syntactic suggestions (meaning next possible token types) **not** semantic suggestions. It could be used as a building block in a semantic suggestions provider, but it cannot do this on "its own". diff --git a/packages/website/docs/tutorial/step1_lexing.md b/packages/website/docs/tutorial/step1_lexing.md index 68a2c8665..2f32edde4 100644 --- a/packages/website/docs/tutorial/step1_lexing.md +++ b/packages/website/docs/tutorial/step1_lexing.md @@ -14,7 +14,7 @@ SELECT name, age FROM persons WHERE age > 100 ... ``` -A Lexer transforms a string input into a [Token](https://chevrotain.io/documentation/11_0_2/interfaces/IToken.html) vector. +A Lexer transforms a string input into a [Token](https://chevrotain.io/documentation/11_0_3/interfaces/IToken.html) vector. Chevrotain has a built in Lexer engine based on Javascript Regular Expressions. ## Our First Token @@ -28,7 +28,7 @@ const createToken = chevrotain.createToken; const From = createToken({ name: "From", pattern: /FROM/ }); ``` -There is nothing much to it. We simply use the [**createToken** API](https://chevrotain.io/documentation/11_0_2/modules.html#createToken) +There is nothing much to it. We simply use the [**createToken** API](https://chevrotain.io/documentation/11_0_3/modules.html#createToken) to define the tokens, and provide it with a `name` property and a `pattern` property which is a RegExp which will be used when splitting up the input string into separate Tokens. diff --git a/packages/website/docs/tutorial/step2_parsing.md b/packages/website/docs/tutorial/step2_parsing.md index b4857bf35..38136ba74 100644 --- a/packages/website/docs/tutorial/step2_parsing.md +++ b/packages/website/docs/tutorial/step2_parsing.md @@ -36,17 +36,17 @@ relationalOperator : ">" | "<" ``` -A Chevrotain Parser analyses an [IToken](https://chevrotain.io/documentation/11_0_2/interfaces/IToken.html) vector that conforms to some grammar. -The grammar is defined using the [parsing DSL](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#AT_LEAST_ONE), which includes the following methods. - -- [CONSUME](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#CONSUME) - 'eat' a Token. -- [SUBRULE](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#SUBRULE) - reference to another rule. -- [OR](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#OR) - Alternation -- [OPTION](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#OPTION) - optional production. -- [MANY](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#MANY) - repetition zero or more. -- [AT_LEAST_ONE](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#AT_LEAST_ONE) - repetition one or more. -- [MANY_SEP](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#MANY_SEP) - repetition (zero or more) with a separator between any two items -- [AT_LEAST_ONE_SEP](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#AT_LEAST_ONE_SEP) - repetition (one or more) with a separator between any two items +A Chevrotain Parser analyses an [IToken](https://chevrotain.io/documentation/11_0_3/interfaces/IToken.html) vector that conforms to some grammar. +The grammar is defined using the [parsing DSL](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#AT_LEAST_ONE), which includes the following methods. + +- [CONSUME](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#CONSUME) - 'eat' a Token. +- [SUBRULE](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#SUBRULE) - reference to another rule. +- [OR](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#OR) - Alternation +- [OPTION](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#OPTION) - optional production. +- [MANY](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#MANY) - repetition zero or more. +- [AT_LEAST_ONE](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#AT_LEAST_ONE) - repetition one or more. +- [MANY_SEP](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#MANY_SEP) - repetition (zero or more) with a separator between any two items +- [AT_LEAST_ONE_SEP](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#AT_LEAST_ONE_SEP) - repetition (one or more) with a separator between any two items ## First Rule diff --git a/packages/website/docs/tutorial/step3a_adding_actions_visitor.md b/packages/website/docs/tutorial/step3a_adding_actions_visitor.md index 892c3e8cb..db1408c14 100644 --- a/packages/website/docs/tutorial/step3a_adding_actions_visitor.md +++ b/packages/website/docs/tutorial/step3a_adding_actions_visitor.md @@ -15,7 +15,7 @@ This can be accomplished using a CST (Concrete Syntax Tree) Visitor defined **ou ## Enabling CST -This feature is automatically enabled when a Parser extends the Chevrotain [CstParser](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html) class +This feature is automatically enabled when a Parser extends the Chevrotain [CstParser](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html) class The invocation of any grammar rule will now automatically create a CST. diff --git a/packages/website/docs/tutorial/step3b_adding_actions_embedded.md b/packages/website/docs/tutorial/step3b_adding_actions_embedded.md index d473df839..8decec6d2 100644 --- a/packages/website/docs/tutorial/step3b_adding_actions_embedded.md +++ b/packages/website/docs/tutorial/step3b_adding_actions_embedded.md @@ -13,9 +13,9 @@ result/data structure/value. This can be accomplished using two features of the Parsing DSL: -- [CONSUME](https://chevrotain.io/documentation/11_0_2/classes/EmbeddedActionsParser.html#CONSUME) will return - The [IToken](https://chevrotain.io/documentation/11_0_2/interfaces/IToken.html) object consumed. -- [SUBRULE](https://chevrotain.io/documentation/11_0_2/classes/EmbeddedActionsParser.html#SUBRULE) will return +- [CONSUME](https://chevrotain.io/documentation/11_0_3/classes/EmbeddedActionsParser.html#CONSUME) will return + The [IToken](https://chevrotain.io/documentation/11_0_3/interfaces/IToken.html) object consumed. +- [SUBRULE](https://chevrotain.io/documentation/11_0_3/classes/EmbeddedActionsParser.html#SUBRULE) will return the result of the grammar rule invoked. ### Enabling embedded actions diff --git a/packages/website/docs/tutorial/step4_fault_tolerance.md b/packages/website/docs/tutorial/step4_fault_tolerance.md index 8cc86887e..75d2a1cd1 100644 --- a/packages/website/docs/tutorial/step4_fault_tolerance.md +++ b/packages/website/docs/tutorial/step4_fault_tolerance.md @@ -49,9 +49,9 @@ Therefore the missing colon will be automatically "inserted". This heuristic's behavior can be customized by the following methods: -- [canTokenTypeBeInsertedInRecovery](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#canTokenTypeBeInsertedInRecovery) +- [canTokenTypeBeInsertedInRecovery](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#canTokenTypeBeInsertedInRecovery) -- [getTokenToInsert](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#getTokenToInsert) +- [getTokenToInsert](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#getTokenToInsert) ## Single Token deletion: @@ -87,7 +87,7 @@ Therefore the redundant right brackets "}" will be skipped (deleted) and the par This heuristic's behavior can be customized by the following method: -- [canTokenTypeBeDeletedInRecovery](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#canTokenTypeBeDeletedInRecovery) +- [canTokenTypeBeDeletedInRecovery](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#canTokenTypeBeDeletedInRecovery) ## Re-Sync Recovery @@ -216,17 +216,17 @@ For the following invalid json input: By default fault tolerance and error recovery heuristics are **disabled**. They can be enabled by passing a optional **recoveryEnabled** parameter (default true) -To the parser's constructor [constructor](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#constructor). +To the parser's constructor [constructor](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#constructor). Once enabled specific rules may have their re-sync recovery disabled explicitly, -This is can be done during the definition of the grammar rule [RULE](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#RULE). +This is can be done during the definition of the grammar rule [RULE](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#RULE). The third parameter(**config**) may contain a **resyncEnabled** property that controls whether or not re-sync is enabled for the **specific** rule. ## CST Integration When using [Concrete Syntax Tree](../guide/concrete_syntax_tree.md) output -A re-synced will return a CSTNode with the boolean ["recoveredNode"](https://chevrotain.io/documentation/11_0_2/interfaces/CstNode.html#recoveredNode) flag marked as true. +A re-synced will return a CSTNode with the boolean ["recoveredNode"](https://chevrotain.io/documentation/11_0_3/interfaces/CstNode.html#recoveredNode) flag marked as true. Additionally a recovered node **may not** have all its contents (children dictionary) filled as only the Terminals and None-Terminals encountered **before** the error which triggered the re-sync will be present. This means that code that handles the CST (CST Walker or Visitor) **must not** @@ -241,7 +241,7 @@ from the sub-rule we have recovered from. By default **undefined** will be returned from a recovered rule, however this should most likely be customize in any but the most simple cases. -Customization is done during the definition of the grammar [RULE](https://chevrotain.io/documentation/11_0_2/classes/CstParser.html#RULE). +Customization is done during the definition of the grammar [RULE](https://chevrotain.io/documentation/11_0_3/classes/CstParser.html#RULE). The third parameter(**config**) may contain a **recoveryValueFunc** property which is a function that will be invoked to produce the returned value in case of re-sync recovery. diff --git a/packages/website/package.json b/packages/website/package.json index 4b23b6b12..fb1f0e8cb 100644 --- a/packages/website/package.json +++ b/packages/website/package.json @@ -1,6 +1,6 @@ { "name": "@chevrotain/website", - "version": "11.0.2", + "version": "11.0.3", "type": "module", "private": true, "description": "source Code for https://chevrotain.io/docs/", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8480c3e81..aa528991f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -69,7 +69,7 @@ importers: specifier: 8.8.0 version: 8.8.0 chevrotain: - specifier: 11.0.2 + specifier: 11.0.3 version: link:../../packages/chevrotain xregexp: specifier: 5.1.1 @@ -82,7 +82,7 @@ importers: examples/implementation_languages: dependencies: chevrotain: - specifier: 11.0.2 + specifier: 11.0.3 version: link:../../packages/chevrotain devDependencies: coffee-script: @@ -101,7 +101,7 @@ importers: examples/lexer: dependencies: chevrotain: - specifier: 11.0.2 + specifier: 11.0.3 version: link:../../packages/chevrotain lodash: specifier: 4.17.21 @@ -110,7 +110,7 @@ importers: examples/parser: dependencies: chevrotain: - specifier: 11.0.2 + specifier: 11.0.3 version: link:../../packages/chevrotain lodash: specifier: 4.17.21 @@ -123,7 +123,7 @@ importers: examples/tutorial: dependencies: chevrotain: - specifier: 11.0.2 + specifier: 11.0.3 version: link:../../packages/chevrotain lodash: specifier: 4.17.21 @@ -132,19 +132,19 @@ importers: packages/chevrotain: dependencies: '@chevrotain/cst-dts-gen': - specifier: 11.0.2 + specifier: 11.0.3 version: link:../cst-dts-gen '@chevrotain/gast': - specifier: 11.0.2 + specifier: 11.0.3 version: link:../gast '@chevrotain/regexp-to-ast': - specifier: 11.0.2 + specifier: 11.0.3 version: link:../regexp-to-ast '@chevrotain/types': - specifier: 11.0.2 + specifier: 11.0.3 version: link:../types '@chevrotain/utils': - specifier: 11.0.2 + specifier: 11.0.3 version: link:../utils lodash-es: specifier: 4.17.21 @@ -196,10 +196,10 @@ importers: packages/cst-dts-gen: dependencies: '@chevrotain/gast': - specifier: 11.0.2 + specifier: 11.0.3 version: link:../gast '@chevrotain/types': - specifier: 11.0.2 + specifier: 11.0.3 version: link:../types lodash-es: specifier: 4.17.21 @@ -212,16 +212,16 @@ importers: packages/cst-dts-gen-test: dependencies: '@chevrotain/cst-dts-gen': - specifier: 11.0.2 + specifier: 11.0.3 version: link:../cst-dts-gen '@chevrotain/gast': - specifier: 11.0.2 + specifier: 11.0.3 version: link:../gast '@chevrotain/types': - specifier: 11.0.2 + specifier: 11.0.3 version: link:../types chevrotain: - specifier: 11.0.2 + specifier: 11.0.3 version: link:../chevrotain lodash-es: specifier: 4.17.21 @@ -237,7 +237,7 @@ importers: packages/gast: dependencies: '@chevrotain/types': - specifier: 11.0.2 + specifier: 11.0.3 version: link:../types lodash-es: specifier: 4.17.21 @@ -574,7 +574,7 @@ packages: lodash.merge: 4.6.2 lodash.uniq: 4.5.0 resolve-from: 5.0.0 - ts-node: 10.9.1(@types/node@16.18.38)(typescript@5.1.6) + ts-node: 10.9.1(@types/node@14.18.35)(typescript@5.1.6) typescript: 5.1.6 transitivePeerDependencies: - '@swc/core' @@ -3155,7 +3155,7 @@ packages: dependencies: '@types/node': 14.18.35 cosmiconfig: 8.2.0 - ts-node: 10.9.1(@types/node@16.18.38)(typescript@5.1.6) + ts-node: 10.9.1(@types/node@14.18.35)(typescript@5.1.6) typescript: 5.1.6 dev: true @@ -7405,6 +7405,38 @@ packages: resolution: {integrity: sha512-+1iDGY6NmOGidq7i7xZGA4cm8DAa6fqdYcvO5Z6yBevH++Bdo9Qt/mN0TzHUgcCcKv1gmh9+W5dHqz8pMWbCbg==} dev: true + /ts-node@10.9.1(@types/node@14.18.35)(typescript@5.1.6): + resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} + hasBin: true + requiresBuild: true + peerDependencies: + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' + peerDependenciesMeta: + '@swc/core': + optional: true + '@swc/wasm': + optional: true + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.9 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.3 + '@types/node': 14.18.35 + acorn: 8.8.0 + acorn-walk: 8.2.0 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 5.1.6 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + dev: true + /ts-node@10.9.1(@types/node@16.18.38)(typescript@5.1.6): resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} hasBin: true