diff --git a/Readme.md b/Readme.md index 2a332c0..89898fa 100644 --- a/Readme.md +++ b/Readme.md @@ -14,26 +14,26 @@

Find and lint complex code patterns effortlessly

-___ +--- # What is CodeQue? -CodeQue is semantic code search engine that understands the code syntax. +CodeQue is semantic code search engine that understands the code syntax. It matches code structurally which makes it excellent for more complex queries. -Query language offers wildcards, partial matching and ignores code formatting. +Query language offers wildcards, partial matching and ignores code formatting. -Structural code search is available for JavaScript, TypesScript, HTML, CSS, Python, Lua and more soon. +Structural code search is available for JavaScript, TypesScript, HTML, CSS, Python, Lua, C# and more soon. -Text code search with handy wildcards is available for __every language__ and covers common regex search use cases. +Text code search with handy wildcards is available for **every language** and covers common regex search use cases.

Give it a try in playground

Just paste code snippet to start searching, no installation needed!

-__Integrations__ +**Integrations** CodeQue is available as: @@ -43,18 +43,16 @@ CodeQue is available as:

All CodeQue tools work offline hence code never leaves your local environment.

-__Coming soon__ +**Coming soon** CodeQue will be soon available as: - Duplicated code identification -- Batch code refactoring -- Advanced ESLint rule creator - +- Batch code refactoring +- Advanced ESLint rule creator

🔔 Get notified about updates 🔔

-
@@ -102,14 +100,13 @@ CodeQue ESLint integration is a no-brainier for any team willing to improve thei -__Installation 👇__ +**Installation 👇** ```sh yarn add --dev @codeque/eslint-plugin ``` - -__Usage ✨__ +**Usage ✨** Enhance your `.eslintrc` with following setup: @@ -117,25 +114,31 @@ Enhance your `.eslintrc` with following setup: { "plugins": ["@codeque"], "rules": { - "@codeque/error": ["error", [ - { - "query": "fetchData()", - "mode": "exact", - "message": "Using fetchData() without parameters causes app crash!", - }, - ]], - "@codeque/warning": ["warn", [ - { - "query": "import $$$ from 'lodash';", - "mode": "include", - "message": "Prefer to import lodash functions from separate packages like 'lodash.debounce'", - }, - ]] + "@codeque/error": [ + "error", + [ + { + "query": "fetchData()", + "mode": "exact", + "message": "Using fetchData() without parameters causes app crash!" + } + ] + ], + "@codeque/warning": [ + "warn", + [ + { + "query": "import $$$ from 'lodash';", + "mode": "include", + "message": "Prefer to import lodash functions from separate packages like 'lodash.debounce'" + } + ] + ] } } ``` -Find more information in [`@codeque/eslint-plugin` package readme](https://www.npmjs.com/package/@codeque/eslint-plugin) +Find more information in [`@codeque/eslint-plugin` package readme](https://www.npmjs.com/package/@codeque/eslint-plugin)
@@ -155,13 +158,13 @@ CodeQue CLI is a complementary tool that can be used for -__Installation 👇__ +**Installation 👇** ```sh yarn global add @codeque/cli ``` -__Usage ✨__ +**Usage ✨** ```sh codeque @@ -183,4 +186,12 @@ Feel free to use [Github Issues](https://github.com/codeque-co/codeque/issues) to - ask for help with writing a query - report a bug or doubt -- suggest feature or improvement \ No newline at end of file +- suggest feature or improvement + +## Made in 🇵🇱 with 🧠 by [@jayu](https://github.com/jayu) + +I hope that this small piece of software will help you. If this tool was useful, don't hesitate to give it a ⭐! + +### My other projects + +- [Rev-dep - High-speed linter for your dependency graph](https://rev-dep.com?utm_source=codeque-md) \ No newline at end of file diff --git a/package.json b/package.json index ea36d0b..b763d8e 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "eslint-plugin-jest": "^24.1.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^4.0.0", - "typescript": "^4.5.2" + "typescript": "5.9.3" }, "scripts": { "lint": "yarn workspaces run lint", @@ -36,4 +36,4 @@ "dependencies": { "@codeque/eslint-plugin": "^0.1.1" } -} +} \ No newline at end of file diff --git a/packages/cli/README.md b/packages/cli/README.md index 12bcd5d..21ba25a 100644 --- a/packages/cli/README.md +++ b/packages/cli/README.md @@ -18,26 +18,26 @@

Find and lint complex code patterns effortlessly

-___ +--- # What is CodeQue? -CodeQue is semantic code search engine that understands the code syntax. +CodeQue is semantic code search engine that understands the code syntax. It matches code structurally which makes it excellent for more complex queries. -Query language offers wildcards, partial matching and ignores code formatting. +Query language offers wildcards, partial matching and ignores code formatting. -Structural code search is available for JavaScript, TypesScript, HTML, CSS, Python, Lua and more soon. +Structural code search is available for JavaScript, TypesScript, HTML, CSS, Python, Lua, C# and more soon. -Text code search with handy wildcards is available for __every language__ and covers common regex search use cases. +Text code search with handy wildcards is available for **every language** and covers common regex search use cases.

Give it a try in playground

Just paste code snippet to start searching, no installation needed!

-__Integrations__ +**Integrations** CodeQue is available as: @@ -47,18 +47,16 @@ CodeQue is available as:

All CodeQue tools work offline hence code never leaves your local environment.

-__Coming soon__ +**Coming soon** CodeQue will be soon available as: - Duplicated code identification -- Batch code refactoring -- Advanced ESLint rule creator - +- Batch code refactoring +- Advanced ESLint rule creator

🔔 Get notified about updates 🔔

-
@@ -123,7 +121,7 @@ I love using CodeQue to look for specific function or React hook usage. It's fas This a typical query that you can use to find usage of some React hook. ```ts -const $$$ = useMyHook(); +const $$$ = useMyHook() ``` ### Assertions ☔ @@ -200,4 +198,12 @@ Feel free to use [Github Issues](https://github.com/codeque-co/codeque/issues) to - ask for help with writing a query - report a bug or doubt -- suggest feature or improvement \ No newline at end of file +- suggest feature or improvement + +## Made in 🇵🇱 with 🧠 by [@jayu](https://github.com/jayu) + +I hope that this small piece of software will help you. If this tool was useful, don't hesitate to give it a ⭐! + +### My other projects + +- [Rev-dep - High-speed linter for your dependency graph](https://rev-dep.com?utm_source=codeque-md) \ No newline at end of file diff --git a/packages/core/README.md b/packages/core/README.md index bcdb6a9..8f5c514 100644 --- a/packages/core/README.md +++ b/packages/core/README.md @@ -18,26 +18,26 @@

Find and lint complex code patterns effortlessly

-___ +--- # What is CodeQue? -CodeQue is semantic code search engine that understands the code syntax. +CodeQue is semantic code search engine that understands the code syntax. It matches code structurally which makes it excellent for more complex queries. -Query language offers wildcards, partial matching and ignores code formatting. +Query language offers wildcards, partial matching and ignores code formatting. -Structural code search is available for JavaScript, TypesScript, HTML, CSS, Python, Lua and more soon. +Structural code search is available for JavaScript, TypesScript, HTML, CSS, Python, Lua, C# and more soon. -Text code search with handy wildcards is available for __every language__ and covers common regex search use cases. +Text code search with handy wildcards is available for **every language** and covers common regex search use cases.

Give it a try in playground

Just paste code snippet to start searching, no installation needed!

-__Integrations__ +**Integrations** CodeQue is available as: @@ -47,18 +47,16 @@ CodeQue is available as:

All CodeQue tools work offline hence code never leaves your local environment.

-__Coming soon__ +**Coming soon** CodeQue will be soon available as: - Duplicated code identification -- Batch code refactoring -- Advanced ESLint rule creator - +- Batch code refactoring +- Advanced ESLint rule creator

🔔 Get notified about updates 🔔

-
@@ -79,4 +77,12 @@ Feel free to use [Github Issues](https://github.com/codeque-co/codeque/issues) to - ask for help with writing a query - report a bug or doubt -- suggest feature or improvement \ No newline at end of file +- suggest feature or improvement + +## Made in 🇵🇱 with 🧠 by [@jayu](https://github.com/jayu) + +I hope that this small piece of software will help you. If this tool was useful, don't hesitate to give it a ⭐! + +### My other projects + +- [Rev-dep - High-speed linter for your dependency graph](https://rev-dep.com?utm_source=codeque-md) \ No newline at end of file diff --git a/packages/core/__tests__/CSharp/matchCodePatterns/basic.test.ts b/packages/core/__tests__/CSharp/matchCodePatterns/basic.test.ts new file mode 100644 index 0000000..c7c25dd --- /dev/null +++ b/packages/core/__tests__/CSharp/matchCodePatterns/basic.test.ts @@ -0,0 +1,179 @@ +import { searchInStrings } from '../../../src/searchInStrings' +import { getParserSettings } from '../../utils' + +describe('Basic queries', () => { + beforeAll(async () => { + await getParserSettings().init?.() + }) + + it('Should exact match identifier', async () => { + const fileContent = ` + using System; + + Console.WriteLine("Hello"); + ` + const queries = [fileContent] + + const { matches, errors } = searchInStrings({ + mode: 'exact', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + }) + + it('Should exact match function definition', () => { + const fileContent = ` + using System; + + class TestClass + { + public static void Main(){} + + static void Fib(int n) + { + var init = (0, 1); + var (a, b) = init; + while (a < n) + { + Console.Write($"{a} "); + (a, b) = (b, a + b); + } + Console.WriteLine(); + } + } + ` + const queries = [fileContent] + + const { matches, errors } = searchInStrings({ + mode: 'exact', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + }) + + it('Should partial match function definition', () => { + const fileContent = ` + using System; + + class TestClass + { + public static void Main(){} + + static void Fib(int n) + { + var init = (0, 1); + var (a, b) = init; + while (a < n) + { + Console.Write($"{a} "); + (a, b) = (b, a + b); + } + Console.WriteLine(); + } + } + ` + + const queries = [ + ` + class TestClass + { + void Fib(int n) + { + Console.WriteLine(); + } + } + `, + ] + + const { matches, errors } = searchInStrings({ + mode: 'include', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + }) + + it('Should match multiline', () => { + const fileContent = ` + using System; + + class TestClass + { + public static void Main(){} + + static void Fib(int n) + { + var init = (0, 1); + var (a, b) = init; + while (a < n) + { + Console.Write($"{a} "); + (a, b) = (b, a + b); + } + Console.WriteLine(); + } + } + ` + + const queries = [ + ` + class TestClass + { + void Fib(int n) + { + var init = (0, 1); + var (a, b) = init; + } + } + `, + ] + + const { matches, errors } = searchInStrings({ + mode: 'include', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + + const match = matches[0] + + expect(match.loc).toStrictEqual({ + start: { line: 4, column: 8, index: 32 }, + end: { line: 19, column: 9, index: 429 }, + }) + }) +}) diff --git a/packages/core/__tests__/CSharp/matchCodePatterns/literals.test.ts b/packages/core/__tests__/CSharp/matchCodePatterns/literals.test.ts new file mode 100644 index 0000000..baea649 --- /dev/null +++ b/packages/core/__tests__/CSharp/matchCodePatterns/literals.test.ts @@ -0,0 +1,165 @@ +import { searchInStrings } from '../../../src/searchInStrings' +import { getParserSettings } from '../../utils' + +describe('Literals', () => { + beforeAll(async () => { + await getParserSettings().init?.() + }) + + it('Should match string literal', () => { + const fileContent = ` + using System; + + Console.WriteLine("Csharp"); + ` + + const queries = [ + ` + "Csharp" + `, + ] + + const { matches, errors } = searchInStrings({ + mode: 'include', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + }) + + it('Should exact match template string literal', () => { + const fileContent = ` + using System; + + Console.WriteLine($"Machine {machineId} has {status}."); + ` + + const queries = [ + ` + $"Machine {machineId} has {status}." + `, + ] + + const { matches, errors } = searchInStrings({ + mode: 'include', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + }) + + it('Should match Integer literal', () => { + const fileContent = ` + class TestClass + { + static void TestPrint() + { + var simpleInt = 32; + } + } + ` + + const queries = [ + ` + 32 + `, + ] + + const { matches, errors } = searchInStrings({ + mode: 'include', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + }) + + it('Should match Float literal', () => { + const fileContent = ` + class TestClass + { + static void TestPrint() + { + var simpleFloat = 32.0; + } + } + ` + + const queries = [ + ` + 32.0 + `, + ] + + const { matches, errors } = searchInStrings({ + mode: 'include', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + }) + + it('Should match Hex literal', () => { + const fileContent = ` + class TestClass + { + static void TestPrint() + { + var simpleHex = 0x1A2F; + } + } + ` + + const queries = [ + ` + 0x1A2F + `, + ] + + const { matches, errors } = searchInStrings({ + mode: 'include', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + }) +}) diff --git a/packages/core/__tests__/CSharp/matchCodePatterns/wildcards.test.ts b/packages/core/__tests__/CSharp/matchCodePatterns/wildcards.test.ts new file mode 100644 index 0000000..623d786 --- /dev/null +++ b/packages/core/__tests__/CSharp/matchCodePatterns/wildcards.test.ts @@ -0,0 +1,156 @@ +import { searchInStrings } from '../../../src/searchInStrings' +import { getParserSettings } from '../../utils' + +describe('Wildcards', () => { + beforeAll(async () => { + await getParserSettings().init?.() + }) + + it('Should match string wildcard', () => { + const fileContent = ` + using System; + + var langLabel = "Csharp"; + Console.WriteLine("Csharp"); + ` + + const queries = [ + ` + "Cs$$" + `, + ] + + const { matches, errors } = searchInStrings({ + mode: 'include', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(2) + }) + + it('Should match node wildcard', () => { + const fileContent = ` + using System; + + var langLabel = "Csharp"; + Console.WriteLine("Csharp"); + ` + + const queries = [ + ` + var langLabel = $$$; + `, + ] + + const { matches, errors } = searchInStrings({ + mode: 'include', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + }) + + it('Should match identifier wildcard', () => { + const fileContent = ` + using System; + + var langLabel = "Csharp"; + Console.WriteLine("Csharp"); + ` + + const queries = [ + ` + Console.$$(); + `, + ] + + const { matches, errors } = searchInStrings({ + mode: 'include', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + }) + + it('Should match integer wildcard', () => { + const fileContent = ` + using System; + + var duration = 3600; + ` + + const queries = [ + ` + 0x0 + `, + ] + + const { matches, errors } = searchInStrings({ + mode: 'include', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + }) + + it('Should match float wildcard', () => { + const fileContent = ` + using System; + + var ratio = 2.33; + ` + + const queries = [ + ` + 0x0 + `, + ] + + const { matches, errors } = searchInStrings({ + mode: 'include', + caseInsensitive: true, + queryCodes: queries, + files: [ + { + path: 'mock', + content: fileContent, + }, + ], + }) + + expect(errors).toHaveLength(0) + expect(matches.length).toBe(1) + }) +}) diff --git a/packages/core/__tests__/common/getFilesList.test.ts b/packages/core/__tests__/common/getFilesList.test.ts index 5c8b144..8945b62 100644 --- a/packages/core/__tests__/common/getFilesList.test.ts +++ b/packages/core/__tests__/common/getFilesList.test.ts @@ -273,6 +273,41 @@ it('should return files for project root with omitting gitignore', async () => { ) }) +it('should use .gitignore only within the current repository', async () => { + mockFs({ + [root]: { + '.git': {}, + project: { + 'fileA.ts': 'content', + '.gitignore': 'packageA/*', + packageA: { + '.git': {}, + '.env': 'content', + '.gitignore': ` + .env + `, + src: { + 'fileE.json': '', + }, + }, + }, + }, + }) + + const filesList = removeCwd( + await getFilesList({ + searchRoot: toPlatformSpecificPath(`${root}/project/packageA`), + }), + ) + mockFs.restore() + + expect(filesList.sort()).toMatchObject( + [`${root}/project/packageA/src/fileE.json`] + .sort() + .map(toPlatformSpecificPath), + ) +}) + // We will add option to search in ignored files, so that exception is not needed it.skip('should return files for project root ignored by parent gitignore, but ignore the nested directories', async () => { mockFs({ @@ -321,6 +356,7 @@ it.skip('should return files for project root ignored by parent gitignore, but i it('should ignore files from parent .gitignore', async () => { mockFs({ [root]: { + '.git': {}, project: { 'fileA.ts': 'content', 'fileB.js': 'content', diff --git a/packages/core/jest.config.js b/packages/core/jest.config.js index 8c6f061..a6c114c 100644 --- a/packages/core/jest.config.js +++ b/packages/core/jest.config.js @@ -19,6 +19,7 @@ const htmlParserTestFiles = ['/__tests__/HTML/**/*.test.ts'] const cssParserTestFiles = ['/__tests__/CSS/**/*.test.ts'] const pythonParserTestFiles = ['/__tests__/Python/**/*.test.ts'] const luaParserTestFiles = ['/__tests__/Lua/**/*.test.ts'] +const csharpParserTestFiles = ['/__tests__/CSharp/**/*.test.ts'] module.exports = { testPathIgnorePatterns: [ @@ -173,5 +174,14 @@ module.exports = { '/jest/lua.setup.ts', ], }, + { + ...sharedConfig, + displayName: { name: 'csharp', color: 'magenta' }, + testMatch: csharpParserTestFiles, + setupFiles: [ + '/jest/shared.setup.ts', + '/jest/csharp.setup.ts', + ], + }, ], } diff --git a/packages/core/jest/csharp.setup.ts b/packages/core/jest/csharp.setup.ts new file mode 100644 index 0000000..2151adc --- /dev/null +++ b/packages/core/jest/csharp.setup.ts @@ -0,0 +1,4 @@ +global.testSettings = { + parserType: 'csharp', + isTraversal: false, +} diff --git a/packages/core/package.json b/packages/core/package.json index 7ac20d6..ce75449 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -27,8 +27,8 @@ }, "devDependencies": { "@angular-eslint/template-parser": "^15.2.1", - "@babel/eslint-parser": "^7.21.8", - "@babel/generator": "^7.21.4", + "@babel/eslint-parser": "7.28.5", + "@babel/generator": "7.28.5", "@types/dedent": "^0.7.0", "@types/esprima": "^4.0.3", "@types/glob": "^7.2.0", @@ -51,11 +51,12 @@ "node-fetch-commonjs": "^3.1.1", "release-it": "^15.0.0", "ts-jest": "^27.1.1", - "unzipper": "^0.10.11" + "unzipper": "^0.10.11", + "typescript": "5.9.3" }, "dependencies": { - "@babel/parser": "7.19.4", - "@babel/plugin-syntax-typescript": "7.18.6", + "@babel/parser": "7.28.5", + "@babel/plugin-syntax-typescript": "7.27.1", "@types/css-tree": "^2.3.1", "dedent": "^0.7.0", "dpdm": "^3.12.0", @@ -78,6 +79,7 @@ "typecheck": "tsc --project tsconfig.json", "test": "yarn build:test && NODE_OPTIONS=--max-old-space-size=4000 yarn jest --maxWorkers=25%", "test:babel": "jest --selectProjects=babel", + "test:common": "jest --selectProjects=common", "test:babel:traversal": "jest --selectProjects=babel:traversal", "test:babel-eslint-parser": "jest --selectProjects=babel-eslint-parser", "test:babel-eslint-parser:traversal": "jest --selectProjects=babel-eslint-parser:traversal", @@ -90,6 +92,7 @@ "test:angular-eslint-template-parser": "jest --selectProjects=angular-eslint-template-parser", "test:python": "jest --selectProjects=python", "test:lua": "jest --selectProjects=lua", + "test:csharp": "jest --selectProjects=csharp", "test:css-tree": "jest --selectProjects=css-tree", "test:circular": "dpdm --exit-code circular:1 --tree=false --warning=false './src/**'", "test:setup": "node ./tools/getFixtures.js", diff --git a/packages/core/src/getFilesList.ts b/packages/core/src/getFilesList.ts index 7a8d915..f64b20a 100644 --- a/packages/core/src/getFilesList.ts +++ b/packages/core/src/getFilesList.ts @@ -2,7 +2,7 @@ import path from 'path' import { promises as fs } from 'fs' import ignore from 'ignore' -import { asyncFilter, measureStart } from './utils' +import { measureStart } from './utils' import minimatch from 'minimatch' import { parseDependencyTree } from 'dpdm/lib/index.js' import { spawnSync } from 'child_process' @@ -16,6 +16,7 @@ export const htmlFamilyExtensionTester = /\.(html|htm)$/ export const cssExtensionTester = /\.(css)$/ export const pythonExtensionTester = /\.(py)$/ export const luaExtensionTester = /\.(lua)$/ +export const csharpExtensionTester = /\.(cs)$/ /** * @deprecated use `typeScriptFamilyExtensionTester` instead @@ -178,6 +179,32 @@ export type GetFilesListArgs = { extensionTester?: RegExp } +const findRepoRoot = async ({ + searchRoot, + fsRoot, +}: { + searchRoot: string + fsRoot: string +}) => { + let currentDir = path.resolve(searchRoot) + while (currentDir !== fsRoot) { + try { + const gitDir = path.join(currentDir, '.git') + const stat = await fs.lstat(gitDir) + + if (stat.isDirectory()) { + return currentDir + } + } catch (_e) { + // .git not found, continue + } + + currentDir = path.dirname(currentDir) + } + + return searchRoot +} + export const getFilesList = async ({ searchRoot: _searchRoot, entryPoint = undefined, @@ -203,25 +230,21 @@ export const getFilesList = async ({ } else { const InitialIgnore = ignoreNodeModules ? ['node_modules'] : [] - // Get parent to root gitignore if (!omitGitIgnore) { - const searchRootSegments = searchRoot - .replace(fsRoot, '') - .split(pathSeparatorChar) - - const pathSegmentsToSystemRoot = [] + const repoRoot = await findRepoRoot({ searchRoot, fsRoot }) + const parentPaths = [] + let currentPath = searchRoot - for (let i = 0; i < searchRootSegments.length; i++) { - let currentPath = searchRootSegments.slice(0, i).join(pathSeparatorChar) - - currentPath = fsRoot + currentPath - - pathSegmentsToSystemRoot.push(currentPath) + while (currentPath !== repoRoot) { + parentPaths.push(currentPath) + currentPath = path.dirname(currentPath) } + parentPaths.push(repoRoot) + const parentDirsIgnore = ( await Promise.all( - pathSegmentsToSystemRoot.map((parentPath) => + parentPaths.map((parentPath) => getGitIgnoreContentForDirectory(parentPath), ), ) diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index 5d3cb68..8610240 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -12,6 +12,7 @@ export { cssExtensionTester, pythonExtensionTester, luaExtensionTester, + csharpExtensionTester, pathToPosix, filterExtensions, } from './getFilesList' diff --git a/packages/core/src/parserSettings/csharp/common.ts b/packages/core/src/parserSettings/csharp/common.ts new file mode 100644 index 0000000..c045f63 --- /dev/null +++ b/packages/core/src/parserSettings/csharp/common.ts @@ -0,0 +1,24 @@ +import { createWildcardUtils } from '../../wildcardUtilsFactory' +import { PoorNodeType } from '../../types' + +export const identifierNodeTypes: string[] = ['identifier'] + +const wildcardChar = '$' +const numericWildcard = '0x0' + +export const getIdentifierNodeName = (node: PoorNodeType) => + node.rawValue as string + +export const setIdentifierNodeName = (node: PoorNodeType, name: string) => { + node.rawValue = name +} + +export const getNodeType = (node: PoorNodeType) => node.nodeType as string + +export const wildcardUtils = createWildcardUtils( + identifierNodeTypes, + numericWildcard, + wildcardChar, + getIdentifierNodeName, + getNodeType, +) diff --git a/packages/core/src/parserSettings/csharp/parseCode.ts b/packages/core/src/parserSettings/csharp/parseCode.ts new file mode 100644 index 0000000..e9688cf --- /dev/null +++ b/packages/core/src/parserSettings/csharp/parseCode.ts @@ -0,0 +1,17 @@ +import { treeSitterParserModuleFactory } from '../../treeSitterUtils' + +const defineRawValueForNodeTypes = [ + 'identifier', + 'integer_literal', + 'string_literal_content', + 'real_literal', +] + +export const parserModule = treeSitterParserModuleFactory({ + treeSitterParserName: 'tree-sitter-c-sharp', + defineRawValueForNodeTypes, +}) + +export function parseCode(code: string) { + return parserModule.parse(code) +} diff --git a/packages/core/src/parserSettings/csharp/settings.ts b/packages/core/src/parserSettings/csharp/settings.ts new file mode 100644 index 0000000..5134784 --- /dev/null +++ b/packages/core/src/parserSettings/csharp/settings.ts @@ -0,0 +1,199 @@ +import { traverseAst } from '../../searchStages/traverseAndMatch' +import { + Location, + MatchPosition, + NumericLiteralUtils, + ParserSettings, + PoorNodeType, + ProgramNodeAndBlockNodeUtils, + StringLikeLiteralUtils, +} from '../../types' + +import { + getIdentifierNodeName, + getNodeType, + identifierNodeTypes, + setIdentifierNodeName, + wildcardUtils, +} from './common' +import { parseCode, parserModule } from './parseCode' + +const supportedExtensions = ['cs'] + +const getProgramNodeFromRootNode = (rootNode: PoorNodeType) => rootNode // root node is program node + +const getProgramBodyFromRootNode = (fileNode: PoorNodeType) => { + return fileNode.children as PoorNodeType[] +} + +const unwrapExpressionStatement = (node: PoorNodeType) => { + if (node.nodeType === 'global_statement' && node.children) { + const exprChild = (node.children as PoorNodeType[])[0] as PoorNodeType + + if (exprChild.nodeType === 'expression_statement' && exprChild.children) { + const parChild = (exprChild.children as PoorNodeType[])[0] as PoorNodeType + + if ( + parChild.nodeType === 'parenthesized_expression' && + parChild.children + ) { + return (parChild.children as PoorNodeType[])[0] as PoorNodeType + } + } + } + + return node +} + +const createBlockStatementNode = ( + children: PoorNodeType[], + position: MatchPosition, +) => ({ + nodeType: 'block', + children, + ...position, +}) + +const isNode = (maybeNode: PoorNodeType) => { + return typeof maybeNode?.nodeType === 'string' +} + +/* start and end is added by CQ in multiline queries */ +const astPropsToSkip = ['loc', 'start', 'end'] + +type NodeValueSanitizers = Record any>> + +const nodeValuesSanitizers: NodeValueSanitizers = {} + +const getSanitizedNodeValue = ( + nodeType: string, + valueKey: string, + value: unknown, +) => { + const valueSanitizer = nodeValuesSanitizers?.[nodeType]?.[valueKey] + + if (valueSanitizer) { + return valueSanitizer(value) + } + + return value +} + +const shouldCompareNode = (node: PoorNodeType) => { + return true +} + +const isIdentifierNode = (node: PoorNodeType) => + identifierNodeTypes.includes(getNodeType(node)) + +const stringLikeLiteralUtils: StringLikeLiteralUtils = { + isStringLikeLiteralNode: (node: PoorNodeType) => + node.nodeType === 'string_literal_content', + getStringLikeLiteralValue: (node: PoorNodeType) => { + return node?.rawValue as string + }, +} + +const numericLiteralUtils: NumericLiteralUtils = { + isNumericLiteralNode: (node: PoorNodeType) => + node.nodeType === 'integer_literal' || node.nodeType === 'real_literal', + getNumericLiteralValue: (node: PoorNodeType) => node?.rawValue as string, +} + +const programNodeAndBlockNodeUtils: ProgramNodeAndBlockNodeUtils = { + isProgramNode: (node: PoorNodeType) => node.nodeType === 'compilation_unit', + isBlockNode: (node: PoorNodeType) => node.nodeType === 'block', + programNodeBodyKey: 'children', + blockNodeBodyKey: 'children', +} + +const getNodePosition: ParserSettings['getNodePosition'] = ( + node: PoorNodeType, +) => ({ + start: ((node?.loc as any)?.start?.index as number) ?? 0, + end: ((node?.loc as any)?.end?.index as number) ?? 0, + loc: node.loc as unknown as Location, +}) + +const getParseErrorLocation = (e: any) => ({ + line: e.loc?.start?.line ?? 0, + column: e.loc?.start?.column ?? 0, +}) + +const alternativeNodeTypes = { + identifier: identifierNodeTypes, +} + +const encodedIdentifierWildcardSequence = 'a_x_2_x_a' +const encodedNodeWildcardSequence = 'a_x_3_x_a' + +const preprocessQueryCode = (code: string) => { + const queryCode = code + .replace(/(\$\$\$)/g, () => encodedNodeWildcardSequence) + .replace(/(\$\$)/g, () => encodedIdentifierWildcardSequence) + + return queryCode +} + +const replaceEncodedWildcards = (value: string) => + value.replace(/a_x_3_x_a/g, () => '$$$').replace(/a_x_2_x_a/g, () => '$$') + +const postprocessQueryNode = (queryNode: PoorNodeType) => { + traverseAst(queryNode, isNode, getNodeType, { + identifier: (node) => { + const nodeName = node.rawValue as string + + if ( + nodeName.includes(encodedNodeWildcardSequence) || + nodeName.includes(encodedIdentifierWildcardSequence) + ) { + node.rawValue = replaceEncodedWildcards(nodeName) + } + }, + string_literal_content: (node) => { + const nodeName = node.rawValue as string + + if ( + nodeName.includes(encodedNodeWildcardSequence) || + nodeName.includes(encodedIdentifierWildcardSequence) + ) { + node.rawValue = replaceEncodedWildcards(nodeName) + } + }, + }) + + return queryNode +} + +export const csharpParser: ParserSettings = { + supportedExtensions, + parseCode, + isNode, + isIdentifierNode, + astPropsToSkip, + getProgramBodyFromRootNode, + getProgramNodeFromRootNode, + getIdentifierNodeName, + getNodeType, + unwrapExpressionStatement, + createBlockStatementNode, + getSanitizedNodeValue, + identifierNodeTypes, + setIdentifierNodeName, + shouldCompareNode, + wildcardUtils, + compareNodesBeforeWildcardsComparison: () => undefined, + compareNodesAfterWildcardsComparison: () => undefined, + identifierTypeAnnotationFieldName: '', + stringLikeLiteralUtils, + numericLiteralUtils, + programNodeAndBlockNodeUtils, + getNodePosition, + getParseErrorLocation, + alternativeNodeTypes, + preprocessQueryCode, + postprocessQueryNode, + init: parserModule.init, +} + +export default csharpParser diff --git a/packages/core/src/parserSettings/index.ts b/packages/core/src/parserSettings/index.ts index 54556ab..3cf8479 100644 --- a/packages/core/src/parserSettings/index.ts +++ b/packages/core/src/parserSettings/index.ts @@ -16,4 +16,5 @@ export const parserSettingsMap: Record ParserSettings> = { ['css-tree']: resolveParserSettings('cssTree'), ['python']: resolveParserSettings('python'), ['lua']: resolveParserSettings('lua'), + ['csharp']: resolveParserSettings('csharp'), } diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 99c9366..87e3d22 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -78,6 +78,7 @@ export type ParserType = | 'css-tree' | 'python' | 'lua' + | 'csharp' export type FileSystemSearchArgs = { filePaths: string[] diff --git a/packages/eslint/README.md b/packages/eslint/README.md index 2f30bc8..5aef8b0 100644 --- a/packages/eslint/README.md +++ b/packages/eslint/README.md @@ -18,26 +18,26 @@

Find and lint complex code patterns effortlessly

-___ +--- # What is CodeQue? -CodeQue is semantic code search engine that understands the code syntax. +CodeQue is semantic code search engine that understands the code syntax. It matches code structurally which makes it excellent for more complex queries. -Query language offers wildcards, partial matching and ignores code formatting. +Query language offers wildcards, partial matching and ignores code formatting. -Structural code search is available for JavaScript, TypesScript, HTML, CSS, Python, Lua and more soon. +Structural code search is available for JavaScript, TypesScript, HTML, CSS, Python, Lua, C# and more soon. -Text code search with handy wildcards is available for __every language__ and covers common regex search use cases. +Text code search with handy wildcards is available for **every language** and covers common regex search use cases.

Give it a try in playground

Just paste code snippet to start searching, no installation needed!

-__Integrations__ +**Integrations** CodeQue is available as: @@ -47,18 +47,16 @@ CodeQue is available as:

All CodeQue tools work offline hence code never leaves your local environment.

-__Coming soon__ +**Coming soon** CodeQue will be soon available as: - Duplicated code identification -- Batch code refactoring -- Advanced ESLint rule creator - +- Batch code refactoring +- Advanced ESLint rule creator

🔔 Get notified about updates 🔔

-
@@ -83,6 +81,7 @@ yarn add --dev @codeque/eslint-plugin ``` CodeQue supports all parsers officially supported by ESLint + - [Espree](https://github.com/eslint/espree) - [Esprima](https://www.npmjs.com/package/esprima) - [@babel/eslint-parser](https://www.npmjs.com/package/@babel/eslint-parser) @@ -94,7 +93,8 @@ CodeQue supports all parsers officially supported by ESLint Add `@codeque` plugin to plugins list in your `.eslintrc`. -And then add a definition for one of the rules: +And then add a definition for one of the rules: + - `@codeque/error` - `@codeque/warning` @@ -108,25 +108,32 @@ Learn more about writing queries from [CodeQue docs](https://codeque.co/docs) { "plugins": ["@codeque"], "rules": { - "@codeque/error": ["error", [ - { - "query": "fetchData()", - "mode": "exact", - "message": "Using fetchData() without parameters causes app crash!", - }, - ]], - "@codeque/warning": ["warn", [ - { - "query": "import $$$ from 'lodash';", - "mode": "include", - "message": "Prefer to import lodash functions from separate packages like 'lodash.debounce'", - }, - ]] + "@codeque/error": [ + "error", + [ + { + "query": "fetchData()", + "mode": "exact", + "message": "Using fetchData() without parameters causes app crash!" + } + ] + ], + "@codeque/warning": [ + "warn", + [ + { + "query": "import $$$ from 'lodash';", + "mode": "include", + "message": "Prefer to import lodash functions from separate packages like 'lodash.debounce'" + } + ] + ] } } ``` The above configuration + - rises an error when `fetchData()` function is called without parameters - reports a warning when utility is imported from main `lodash` package @@ -134,7 +141,6 @@ The above configuration

- > If your config seems too big, feel free to extract your set of rules to a separate file. Change your `.eslintrc` to JS file and import rules from a separate file. ## Rule config object properties @@ -142,12 +148,13 @@ The above configuration Minimal rule config object should contain just `query` key ```js -({ - query: "someCode" +;({ + query: 'someCode', }) ``` The default settings are: + - `mode` - `include` - `message` - `Restricted code pattern` - `caseInsensitive` - `true` @@ -160,7 +167,7 @@ All configuration options type RuleConfig = { query: string // Content of the query mode: 'exact' | 'include' | 'include-with-order' // CodeQue search mode - message: string // Error message to display + message: string // Error message to display caseInsensitive: boolean // Whether query should perform matches case insensitively includeFiles: string[] | undefined // list of glob patterns to indicate files against which given rule should be executed excludeFiles: string[] // list of glob patterns to indicate files against which given rule should not be executed @@ -169,7 +176,7 @@ type RuleConfig = { ## Rule examples -CodeQue is general purpose code search tool. The examples list could be endless. Here are some of them for you to get a glimpse of what's possible. Those are relatively simple, you will definitely find some more complex during day to day work. +CodeQue is general purpose code search tool. The examples list could be endless. Here are some of them for you to get a glimpse of what's possible. Those are relatively simple, you will definitely find some more complex during day to day work. > Don't know how to write a query? [Open an issue on GitHub](https://github.com/codeque-co/codeque/issues) ! @@ -185,13 +192,16 @@ This rule warns about all places in the code that can output some (usually unwan ```json { "rules": { - "@codeque/warning": ["warn", [ - { - "query": "console.$$()", - "mode": "include", - "message": "Prefer to use 'Logger' util.", - }, - ]] + "@codeque/warning": [ + "warn", + [ + { + "query": "console.$$()", + "mode": "include", + "message": "Prefer to use 'Logger' util." + } + ] + ] } } ``` @@ -214,14 +224,17 @@ The rule warns against using `disabled` property on `SomeLibComponent`, and sugg ```json { "rules": { - "@codeque/warning": ["warn", [ - { - "query": "", - "mode": "include", - "message": "'disabled' property does not work as expected. Use 'isDisabled' instead", - "includeFiles": ["**/*.tsx"] - }, - ]] + "@codeque/warning": [ + "warn", + [ + { + "query": "", + "mode": "include", + "message": "'disabled' property does not work as expected. Use 'isDisabled' instead", + "includeFiles": ["**/*.tsx"] + } + ] + ] } } ``` @@ -246,20 +259,22 @@ This is interesting example that links together two statements in the same code ```json { "rules": { - "@codeque/error": ["error", [ - { - "query": "const { confirm } = useAsyncDialog(); const $$ = useCallback($$$, [confirm]);", - "mode": "include", - "message": "'confirm' is known to be unstable. Using it in hook dependency array can cause render loop", - }, - ]] + "@codeque/error": [ + "error", + [ + { + "query": "const { confirm } = useAsyncDialog(); const $$ = useCallback($$$, [confirm]);", + "mode": "include", + "message": "'confirm' is known to be unstable. Using it in hook dependency array can cause render loop" + } + ] + ] } } ``` -

@@ -270,34 +285,35 @@ First rule restricts usage of object literal as a prop. Object literal could be Second rule restricts places where a given array is mapped directly in JSX. It could be memoized to make the array reference stable and reduce re-renders. -
Show configuration ```json { "rules": { - "@codeque/error": ["error", [ - { - "query": "<$$ $$={{}} />", - "mode": "include", - "message": "Don't use object literal in JSX props", - "includeFiles": ["**/*.tsx"] - }, - { - "query": "<$$ $$={$$$.map(() => ($$$))} />", - "mode": "include", - "message": "Don't use map directly in JSX, memoize map result instead", - "includeFiles": ["**/*.tsx"] - }, - ]] + "@codeque/error": [ + "error", + [ + { + "query": "<$$ $$={{}} />", + "mode": "include", + "message": "Don't use object literal in JSX props", + "includeFiles": ["**/*.tsx"] + }, + { + "query": "<$$ $$={$$$.map(() => ($$$))} />", + "mode": "include", + "message": "Don't use map directly in JSX, memoize map result instead", + "includeFiles": ["**/*.tsx"] + } + ] + ] } } ```
-

@@ -310,9 +326,9 @@ CodeQue performs shallow matching based on strings in query, so it can filter ou Query that contains wildcards only, eg. `$$.$$()` will be looked for in every file, as query does not include any specific characters sequence. -However query `console.$$()` would match only on files that contains `console` string somewhere within it's contents. +However query `console.$$()` would match only on files that contains `console` string somewhere within it's contents. -Remember to be as specific as possible and use file filtering options eg. to not run JSX rules on `*.js` files. +Remember to be as specific as possible and use file filtering options eg. to not run JSX rules on `*.js` files. CodeQue will run faster for more specific patterns that occurs rarely in the codebase. If pattern is very common, it would have to do more comparisons, hence would run longer. @@ -335,7 +351,7 @@ Linting code pattern specific to your code base is what CodeQue eslint integrati Rule from examples section that captures issue with unstable hook reference occurs rare in the codebase, but can prevent various important bugs. ``` -const { confirm } = useAsyncDialog(); +const { confirm } = useAsyncDialog(); const $$ = useCallback($$$, [confirm]); ``` @@ -359,8 +375,7 @@ Rule | Time (ms) | Relative @codeque/warning | 28.286 | 100.0% ``` - -And for new introduction of the pattern while you code, it will be captures in ~30ms +And for new introduction of the pattern while you code, it will be captures in ~30ms ```sh ✖ 1 problems (0 errors, 1 warning) @@ -370,13 +385,13 @@ Rule | Time (ms) | Relative @codeque/warning | 30.553 | 100.0% ``` -It's not much comparing to the value it gives. +It's not much comparing to the value it gives. Consider how much time it would take to implement such rule with standard approach. No one has budget for that and instead time will be spend on fixing bugs. #### Capturing restricted imports -Here is the comparison of `no-restricted-imports` ESLint rule with CodeQue rule. +Here is the comparison of `no-restricted-imports` ESLint rule with CodeQue rule. Both restricts importing `useCallback` from `react`. @@ -397,7 +412,6 @@ Rule | Time (ms) | Relative no-restricted-imports | 30.239 | 43.9% ``` - #### Restricting console usage The performance result of ESLint `no-console` rule comparing to CodeQue `console.$$()` query on TypeScript codebase with ~4000 source files. @@ -413,7 +427,6 @@ Rule | Time (ms) | Relative no-console | 21.482 | 20.9% ``` - ## Telemetry Plugin collects completely anonymous telemetry that helps me get insights about usage. @@ -430,4 +443,12 @@ Feel free to use [Github Issues](https://github.com/codeque-co/codeque/issues) to - ask for help with writing a query - report a bug or doubt -- suggest feature or improvement \ No newline at end of file +- suggest feature or improvement + +## Made in 🇵🇱 with 🧠 by [@jayu](https://github.com/jayu) + +I hope that this small piece of software will help you. If this tool was useful, don't hesitate to give it a ⭐! + +### My other projects + +- [Rev-dep - High-speed linter for your dependency graph](https://rev-dep.com?utm_source=codeque-md) \ No newline at end of file diff --git a/packages/tree-sitter-port/output/tree-sitter-c-sharp/fields-meta.json b/packages/tree-sitter-port/output/tree-sitter-c-sharp/fields-meta.json index f9af177..b9a5289 100644 --- a/packages/tree-sitter-port/output/tree-sitter-c-sharp/fields-meta.json +++ b/packages/tree-sitter-port/output/tree-sitter-c-sharp/fields-meta.json @@ -41,61 +41,60 @@ "type": "anonymous_object_creation_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", - "with_expression": "children", - "name_equals": "children" + "typeof_expression": "children", + "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -103,61 +102,61 @@ "type": "argument", "singleFieldNames": ["name"], "nodeTypeToMultipleFieldName": { + "declaration_expression": "children", + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", - "with_expression": "children", - "declaration_expression": "children" + "typeof_expression": "children", + "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -181,59 +180,59 @@ "type": "array_rank_specifier", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -248,59 +247,59 @@ "type": "arrow_expression_clause", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -313,15 +312,7 @@ }, "assignment_expression": { "type": "assignment_expression", - "singleFieldNames": ["left", "right"], - "nodeTypeToMultipleFieldName": { - "assignment_operator": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "assignment_operator": { - "type": "assignment_operator", - "singleFieldNames": [], + "singleFieldNames": ["left", "operator", "right"], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, @@ -337,62 +328,60 @@ "type": "attribute_argument", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", - "with_expression": "children", - "name_colon": "children", - "name_equals": "children" + "typeof_expression": "children", + "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -423,78 +412,73 @@ "type": "await_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "base_expression": { - "type": "base_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, "base_list": { "type": "base_list", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "argument_list": "children", + "primary_constructor_base_type": "children", "alias_qualified_name": "children", "array_type": "children", "function_pointer_type": "children", "generic_name": "children", - "global": "children", "identifier": "children", "implicit_type": "children", "nullable_type": "children", @@ -503,8 +487,7 @@ "qualified_name": "children", "ref_type": "children", "scoped_type": "children", - "tuple_type": "children", - "primary_constructor_base_type": "children" + "tuple_type": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -526,14 +509,15 @@ "empty_statement": "children", "expression_statement": "children", "fixed_statement": "children", - "for_each_statement": "children", "for_statement": "children", + "foreach_statement": "children", "goto_statement": "children", "if_statement": "children", "labeled_statement": "children", "local_declaration_statement": "children", "local_function_statement": "children", "lock_statement": "children", + "preproc_if": "children", "return_statement": "children", "switch_statement": "children", "throw_statement": "children", @@ -577,165 +561,92 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "case_pattern_switch_label": { - "type": "case_pattern_switch_label", + "calling_convention": { + "type": "calling_convention", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "and_pattern": "children", - "constant_pattern": "children", - "declaration_pattern": "children", - "discard": "children", - "list_pattern": "children", - "negated_pattern": "children", - "or_pattern": "children", - "parenthesized_pattern": "children", - "recursive_pattern": "children", - "relational_pattern": "children", - "type_pattern": "children", - "var_pattern": "children", - "when_clause": "children" + "identifier": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "cast_expression": { + "type": "cast_expression", + "singleFieldNames": ["type", "value"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "catch_clause": { + "type": "catch_clause", + "singleFieldNames": ["body"], + "nodeTypeToMultipleFieldName": { + "catch_declaration": "children", + "catch_filter_clause": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "case_switch_label": { - "type": "case_switch_label", + "catch_declaration": { + "type": "catch_declaration", + "singleFieldNames": ["name", "type"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "catch_filter_clause": { + "type": "catch_filter_clause", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "postfix_unary_expression": "children", - "prefix_unary_expression": "children", - "query_expression": "children", - "range_expression": "children", "raw_string_literal": "children", "real_literal": "children", - "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", "string_literal": "children", - "switch_expression": "children", - "this_expression": "children", - "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", "verbatim_string_literal": "children", - "with_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "cast_expression": { - "type": "cast_expression", - "singleFieldNames": ["type", "value"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "catch_clause": { - "type": "catch_clause", - "singleFieldNames": ["body"], - "nodeTypeToMultipleFieldName": { - "catch_declaration": "children", - "catch_filter_clause": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "catch_declaration": { - "type": "catch_declaration", - "singleFieldNames": ["name", "type"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "catch_filter_clause": { - "type": "catch_filter_clause", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "anonymous_method_expression": "children", - "anonymous_object_creation_expression": "children", - "array_creation_expression": "children", - "as_expression": "children", - "assignment_expression": "children", - "await_expression": "children", - "base_expression": "children", - "binary_expression": "children", - "boolean_literal": "children", - "cast_expression": "children", - "character_literal": "children", - "checked_expression": "children", - "conditional_access_expression": "children", - "conditional_expression": "children", - "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", - "implicit_array_creation_expression": "children", - "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", - "initializer_expression": "children", - "integer_literal": "children", - "interpolated_string_expression": "children", - "invocation_expression": "children", - "is_expression": "children", - "is_pattern_expression": "children", - "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", - "null_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -744,7 +655,7 @@ "type": "character_literal", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "character_literal_unescaped": "children", + "character_literal_content": "children", "escape_sequence": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -753,59 +664,59 @@ "type": "checked_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -820,11 +731,14 @@ }, "class_declaration": { "type": "class_declaration", - "singleFieldNames": ["bases", "body", "name", "type_parameters"], + "singleFieldNames": ["body", "name"], "nodeTypeToMultipleFieldName": { "attribute_list": "children", + "base_list": "children", "modifier": "children", - "type_parameter_constraints_clause": "children" + "parameter_list": "children", + "type_parameter_constraints_clause": "children", + "type_parameter_list": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -832,17 +746,18 @@ "type": "compilation_unit", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "class_declaration": "children", - "delegate_declaration": "children", - "enum_declaration": "children", "extern_alias_directive": "children", "file_scoped_namespace_declaration": "children", - "global_attribute_list": "children", + "global_attribute": "children", "global_statement": "children", - "interface_declaration": "children", "namespace_declaration": "children", + "preproc_if": "children", + "shebang_directive": "children", + "class_declaration": "children", + "delegate_declaration": "children", + "enum_declaration": "children", + "interface_declaration": "children", "record_declaration": "children", - "record_struct_declaration": "children", "struct_declaration": "children", "using_directive": "children" }, @@ -868,28 +783,27 @@ "singleFieldNames": [], "nodeTypeToMultipleFieldName": { "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "default_expression": "children", "generic_name": "children", - "global": "children", "identifier": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", - "parenthesized_expression": "children", - "postfix_unary_expression": "children", - "prefix_unary_expression": "children", "raw_string_literal": "children", "real_literal": "children", - "size_of_expression": "children", "string_literal": "children", + "verbatim_string_literal": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "postfix_unary_expression": "children", + "prefix_unary_expression": "children", + "sizeof_expression": "children", "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children" + "typeof_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -957,9 +871,9 @@ "method_declaration": "children", "namespace_declaration": "children", "operator_declaration": "children", + "preproc_if": "children", "property_declaration": "children", "record_declaration": "children", - "record_struct_declaration": "children", "struct_declaration": "children", "using_directive": "children" }, @@ -980,20 +894,6 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "default_switch_label": { - "type": "default_switch_label", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "define_directive": { - "type": "define_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "identifier": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, "delegate_declaration": { "type": "delegate_declaration", "singleFieldNames": ["name", "parameters", "type", "type_parameters"], @@ -1014,88 +914,9 @@ }, "do_statement": { "type": "do_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "anonymous_method_expression": "children", - "anonymous_object_creation_expression": "children", - "array_creation_expression": "children", - "as_expression": "children", - "assignment_expression": "children", - "await_expression": "children", - "base_expression": "children", - "binary_expression": "children", - "boolean_literal": "children", - "cast_expression": "children", - "character_literal": "children", - "checked_expression": "children", - "conditional_access_expression": "children", - "conditional_expression": "children", - "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", - "implicit_array_creation_expression": "children", - "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", - "initializer_expression": "children", - "integer_literal": "children", - "interpolated_string_expression": "children", - "invocation_expression": "children", - "is_expression": "children", - "is_pattern_expression": "children", - "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", - "null_literal": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "postfix_unary_expression": "children", - "prefix_unary_expression": "children", - "query_expression": "children", - "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", - "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", - "switch_expression": "children", - "this_expression": "children", - "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", - "with_expression": "children", - "block": "children", - "break_statement": "children", - "checked_statement": "children", - "continue_statement": "children", - "do_statement": "children", - "empty_statement": "children", - "expression_statement": "children", - "fixed_statement": "children", - "for_each_statement": "children", - "for_statement": "children", - "goto_statement": "children", - "if_statement": "children", - "labeled_statement": "children", - "local_declaration_statement": "children", - "local_function_statement": "children", - "lock_statement": "children", - "return_statement": "children", - "switch_statement": "children", - "throw_statement": "children", - "try_statement": "children", - "unsafe_statement": "children", - "using_statement": "children", - "while_statement": "children", - "yield_statement": "children" - }, - "multipleOrChildrenFieldNames": ["children"] + "singleFieldNames": ["body", "condition"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] }, "element_access_expression": { "type": "element_access_expression", @@ -1107,49 +928,22 @@ "type": "element_binding_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "bracketed_argument_list": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "elif_directive": { - "type": "elif_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "binary_expression": "children", - "boolean_literal": "children", - "identifier": "children", - "integer_literal": "children", - "parenthesized_expression": "children", - "prefix_unary_expression": "children", - "verbatim_string_literal": "children" + "argument": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "else_directive": { - "type": "else_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, "empty_statement": { "type": "empty_statement", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "endregion_directive": { - "type": "endregion_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "preproc_message": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, "enum_declaration": { "type": "enum_declaration", - "singleFieldNames": ["bases", "body", "name"], + "singleFieldNames": ["body", "name"], "nodeTypeToMultipleFieldName": { "attribute_list": "children", + "base_list": "children", "modifier": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -1166,91 +960,23 @@ "type": "enum_member_declaration_list", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "enum_member_declaration": "children" + "enum_member_declaration": "children", + "preproc_if": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "event_declaration": { + "type": "event_declaration", + "singleFieldNames": ["accessors", "name", "type"], + "nodeTypeToMultipleFieldName": { + "attribute_list": "children", + "explicit_interface_specifier": "children", + "modifier": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "equals_value_clause": { - "type": "equals_value_clause", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "anonymous_method_expression": "children", - "anonymous_object_creation_expression": "children", - "array_creation_expression": "children", - "as_expression": "children", - "assignment_expression": "children", - "await_expression": "children", - "base_expression": "children", - "binary_expression": "children", - "boolean_literal": "children", - "cast_expression": "children", - "character_literal": "children", - "checked_expression": "children", - "conditional_access_expression": "children", - "conditional_expression": "children", - "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", - "implicit_array_creation_expression": "children", - "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", - "initializer_expression": "children", - "integer_literal": "children", - "interpolated_string_expression": "children", - "invocation_expression": "children", - "is_expression": "children", - "is_pattern_expression": "children", - "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", - "null_literal": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "postfix_unary_expression": "children", - "prefix_unary_expression": "children", - "query_expression": "children", - "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", - "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", - "switch_expression": "children", - "this_expression": "children", - "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", - "with_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "error_directive": { - "type": "error_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "preproc_message": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "event_declaration": { - "type": "event_declaration", - "singleFieldNames": ["accessors", "name", "type"], - "nodeTypeToMultipleFieldName": { - "attribute_list": "children", - "explicit_interface_specifier": "children", - "modifier": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "event_field_declaration": { - "type": "event_field_declaration", + "event_field_declaration": { + "type": "event_field_declaration", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { "attribute_list": "children", @@ -1261,68 +987,12 @@ }, "explicit_interface_specifier": { "type": "explicit_interface_specifier", - "singleFieldNames": ["name"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "expression_colon": { - "type": "expression_colon", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "anonymous_method_expression": "children", - "anonymous_object_creation_expression": "children", - "array_creation_expression": "children", - "as_expression": "children", - "assignment_expression": "children", - "await_expression": "children", - "base_expression": "children", - "binary_expression": "children", - "boolean_literal": "children", - "cast_expression": "children", - "character_literal": "children", - "checked_expression": "children", - "conditional_access_expression": "children", - "conditional_expression": "children", - "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", + "alias_qualified_name": "children", "generic_name": "children", - "global": "children", "identifier": "children", - "implicit_array_creation_expression": "children", - "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", - "initializer_expression": "children", - "integer_literal": "children", - "interpolated_string_expression": "children", - "invocation_expression": "children", - "is_expression": "children", - "is_pattern_expression": "children", - "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", - "null_literal": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "postfix_unary_expression": "children", - "prefix_unary_expression": "children", - "query_expression": "children", - "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", - "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", - "switch_expression": "children", - "this_expression": "children", - "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", - "with_expression": "children" + "qualified_name": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -1359,18 +1029,8 @@ "file_scoped_namespace_declaration": { "type": "file_scoped_namespace_declaration", "singleFieldNames": ["name"], - "nodeTypeToMultipleFieldName": { - "class_declaration": "children", - "delegate_declaration": "children", - "enum_declaration": "children", - "extern_alias_directive": "children", - "interface_declaration": "children", - "record_declaration": "children", - "record_struct_declaration": "children", - "struct_declaration": "children", - "using_directive": "children" - }, - "multipleOrChildrenFieldNames": ["children"] + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] }, "finally_clause": { "type": "finally_clause", @@ -1392,14 +1052,15 @@ "empty_statement": "children", "expression_statement": "children", "fixed_statement": "children", - "for_each_statement": "children", "for_statement": "children", + "foreach_statement": "children", "goto_statement": "children", "if_statement": "children", "labeled_statement": "children", "local_declaration_statement": "children", "local_function_statement": "children", "lock_statement": "children", + "preproc_if": "children", "return_statement": "children", "switch_statement": "children", "throw_statement": "children", @@ -1412,185 +1073,162 @@ }, "multipleOrChildrenFieldNames": ["children"] }, - "for_each_statement": { - "type": "for_each_statement", - "singleFieldNames": ["body", "left", "right", "type"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, "for_statement": { "type": "for_statement", "singleFieldNames": ["body", "condition"], "nodeTypeToMultipleFieldName": { ",": "update", + "element_access_expression": "update", + "element_binding_expression": "update", + "generic_name": "update", + "identifier": "update", + "member_access_expression": "update", + "parenthesized_expression": "update", + "prefix_unary_expression": "update", + "this": "update", + "tuple_expression": "update", "anonymous_method_expression": "update", "anonymous_object_creation_expression": "update", "array_creation_expression": "update", "as_expression": "update", "assignment_expression": "update", "await_expression": "update", - "base_expression": "update", + "base": "update", "binary_expression": "update", - "boolean_literal": "update", "cast_expression": "update", - "character_literal": "update", "checked_expression": "update", "conditional_access_expression": "update", "conditional_expression": "update", "default_expression": "update", - "element_access_expression": "update", - "element_binding_expression": "update", - "generic_name": "update", - "global": "update", - "identifier": "update", "implicit_array_creation_expression": "update", "implicit_object_creation_expression": "update", - "implicit_stack_alloc_array_creation_expression": "update", + "implicit_stackalloc_expression": "update", "initializer_expression": "update", - "integer_literal": "update", "interpolated_string_expression": "update", "invocation_expression": "update", "is_expression": "update", "is_pattern_expression": "update", "lambda_expression": "update", - "make_ref_expression": "update", - "member_access_expression": "update", + "boolean_literal": "update", + "character_literal": "update", + "integer_literal": "update", "null_literal": "update", + "raw_string_literal": "update", + "real_literal": "update", + "string_literal": "update", + "verbatim_string_literal": "update", + "makeref_expression": "update", "object_creation_expression": "update", - "parenthesized_expression": "update", "postfix_unary_expression": "update", - "prefix_unary_expression": "update", + "preproc_if": "update", "query_expression": "update", "range_expression": "update", - "raw_string_literal": "update", - "real_literal": "update", "ref_expression": "update", - "ref_type_expression": "update", - "ref_value_expression": "update", - "size_of_expression": "update", - "stack_alloc_array_creation_expression": "update", - "string_literal": "update", + "reftype_expression": "update", + "refvalue_expression": "update", + "sizeof_expression": "update", + "stackalloc_expression": "update", "switch_expression": "update", - "this_expression": "update", "throw_expression": "update", - "tuple_expression": "update", - "type_of_expression": "update", - "verbatim_string_literal": "update", + "typeof_expression": "update", "with_expression": "update", "variable_declaration": "initializer" }, "multipleOrChildrenFieldNames": ["initializer", "update"] }, + "foreach_statement": { + "type": "foreach_statement", + "singleFieldNames": ["body", "left", "right", "type"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "from_clause": { "type": "from_clause", "singleFieldNames": ["name", "type"], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "function_pointer_calling_convention": { - "type": "function_pointer_calling_convention", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "function_pointer_unmanaged_calling_convention_list": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, "function_pointer_parameter": { "type": "function_pointer_parameter", "singleFieldNames": ["type"], - "nodeTypeToMultipleFieldName": { - "parameter_modifier": "children" - }, - "multipleOrChildrenFieldNames": ["children"] + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] }, "function_pointer_type": { "type": "function_pointer_type", - "singleFieldNames": [], + "singleFieldNames": ["returns"], "nodeTypeToMultipleFieldName": { - "function_pointer_calling_convention": "children", + "calling_convention": "children", "function_pointer_parameter": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "function_pointer_unmanaged_calling_convention": { - "type": "function_pointer_unmanaged_calling_convention", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "identifier": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "function_pointer_unmanaged_calling_convention_list": { - "type": "function_pointer_unmanaged_calling_convention_list", + "generic_name": { + "type": "generic_name", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "function_pointer_unmanaged_calling_convention": "children" + "identifier": "children", + "type_argument_list": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "generic_name": { - "type": "generic_name", - "singleFieldNames": ["name", "type_arguments"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "global_attribute_list": { - "type": "global_attribute_list", + "global_attribute": { + "type": "global_attribute", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { "attribute": "children" @@ -1609,14 +1247,15 @@ "empty_statement": "children", "expression_statement": "children", "fixed_statement": "children", - "for_each_statement": "children", "for_statement": "children", + "foreach_statement": "children", "goto_statement": "children", "if_statement": "children", "labeled_statement": "children", "local_declaration_statement": "children", "local_function_statement": "children", "lock_statement": "children", + "preproc_if": "children", "return_statement": "children", "switch_statement": "children", "throw_statement": "children", @@ -1632,59 +1271,59 @@ "type": "goto_statement", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -1693,59 +1332,59 @@ "type": "group_clause", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", - "null_literal": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", + "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -1756,20 +1395,6 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "if_directive": { - "type": "if_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "binary_expression": "children", - "boolean_literal": "children", - "identifier": "children", - "integer_literal": "children", - "parenthesized_expression": "children", - "prefix_unary_expression": "children", - "verbatim_string_literal": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, "if_statement": { "type": "if_statement", "singleFieldNames": ["alternative", "condition", "consequence"], @@ -1793,16 +1418,14 @@ }, "multipleOrChildrenFieldNames": ["children"] }, - "implicit_parameter_list": { - "type": "implicit_parameter_list", + "implicit_parameter": { + "type": "implicit_parameter", "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "parameter": "children" - }, - "multipleOrChildrenFieldNames": ["children"] + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] }, - "implicit_stack_alloc_array_creation_expression": { - "type": "implicit_stack_alloc_array_creation_expression", + "implicit_stackalloc_expression": { + "type": "implicit_stackalloc_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { "initializer_expression": "children" @@ -1829,163 +1452,146 @@ "type": "initializer_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, "interface_declaration": { "type": "interface_declaration", - "singleFieldNames": ["bases", "body", "name", "type_parameters"], + "singleFieldNames": ["body", "name", "type_parameters"], "nodeTypeToMultipleFieldName": { "attribute_list": "children", + "base_list": "children", "modifier": "children", "type_parameter_constraints_clause": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "interpolated_raw_string_text": { - "type": "interpolated_raw_string_text", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, "interpolated_string_expression": { "type": "interpolated_string_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "interpolated_raw_string_text": "children", - "interpolated_string_text": "children", - "interpolated_verbatim_string_text": "children", - "interpolation": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "interpolated_string_text": { - "type": "interpolated_string_text", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "escape_sequence": "children" + "escape_sequence": "children", + "interpolation": "children", + "interpolation_quote": "children", + "interpolation_start": "children", + "string_content": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "interpolated_verbatim_string_text": { - "type": "interpolated_verbatim_string_text", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, "interpolation": { "type": "interpolation", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children", "interpolation_alignment_clause": "children", + "interpolation_brace": "children", "interpolation_format_clause": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -1994,59 +1600,59 @@ "type": "interpolation_alignment_clause", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -2077,61 +1683,61 @@ }, "join_clause": { "type": "join_clause", - "singleFieldNames": ["name", "type"], + "singleFieldNames": ["type"], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children", "join_into_clause": "children" }, @@ -2149,6 +1755,7 @@ "type": "labeled_statement", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "identifier": "children", "block": "children", "break_statement": "children", "checked_statement": "children", @@ -2157,14 +1764,15 @@ "empty_statement": "children", "expression_statement": "children", "fixed_statement": "children", - "for_each_statement": "children", "for_statement": "children", + "foreach_statement": "children", "goto_statement": "children", "if_statement": "children", "labeled_statement": "children", "local_declaration_statement": "children", "local_function_statement": "children", "lock_statement": "children", + "preproc_if": "children", "return_statement": "children", "switch_statement": "children", "throw_statement": "children", @@ -2172,8 +1780,7 @@ "unsafe_statement": "children", "using_statement": "children", "while_statement": "children", - "yield_statement": "children", - "identifier": "children" + "yield_statement": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -2190,72 +1797,63 @@ "type": "let_clause", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "line_directive": { - "type": "line_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "preproc_integer_literal": "children", - "preproc_string_literal": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, "list_pattern": { "type": "list_pattern", "singleFieldNames": [], @@ -2270,20 +1868,11 @@ "parenthesized_pattern": "children", "recursive_pattern": "children", "relational_pattern": "children", - "slice_pattern": "children", "type_pattern": "children", "var_pattern": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "load_directive": { - "type": "load_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "preproc_string_literal": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, "local_declaration_statement": { "type": "local_declaration_statement", "singleFieldNames": [], @@ -2313,59 +1902,59 @@ "type": "lock_statement", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children", "block": "children", "break_statement": "children", @@ -2375,8 +1964,8 @@ "empty_statement": "children", "expression_statement": "children", "fixed_statement": "children", - "for_each_statement": "children", "for_statement": "children", + "foreach_statement": "children", "goto_statement": "children", "if_statement": "children", "labeled_statement": "children", @@ -2394,63 +1983,63 @@ }, "multipleOrChildrenFieldNames": ["children"] }, - "make_ref_expression": { - "type": "make_ref_expression", + "makeref_expression": { + "type": "makeref_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -2473,7 +2062,7 @@ "body", "name", "parameters", - "type", + "returns", "type_parameters" ], "nodeTypeToMultipleFieldName": { @@ -2490,21 +2079,6 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "name_colon": { - "type": "name_colon", - "singleFieldNames": ["name"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "name_equals": { - "type": "name_equals", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "global": "children", - "identifier": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, "namespace_declaration": { "type": "namespace_declaration", "singleFieldNames": ["body", "name"], @@ -2530,12 +2104,6 @@ }, "multipleOrChildrenFieldNames": ["children"] }, - "nullable_directive": { - "type": "nullable_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, "nullable_type": { "type": "nullable_type", "singleFieldNames": ["type"], @@ -2568,59 +2136,59 @@ "type": "order_by_clause", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -2630,8 +2198,61 @@ "singleFieldNames": ["name", "type"], "nodeTypeToMultipleFieldName": { "attribute_list": "children", - "equals_value_clause": "children", - "parameter_modifier": "children" + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", + "anonymous_method_expression": "children", + "anonymous_object_creation_expression": "children", + "array_creation_expression": "children", + "as_expression": "children", + "assignment_expression": "children", + "await_expression": "children", + "base": "children", + "binary_expression": "children", + "cast_expression": "children", + "checked_expression": "children", + "conditional_access_expression": "children", + "conditional_expression": "children", + "default_expression": "children", + "implicit_array_creation_expression": "children", + "implicit_object_creation_expression": "children", + "implicit_stackalloc_expression": "children", + "initializer_expression": "children", + "interpolated_string_expression": "children", + "invocation_expression": "children", + "is_expression": "children", + "is_pattern_expression": "children", + "lambda_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", + "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", + "object_creation_expression": "children", + "postfix_unary_expression": "children", + "preproc_if": "children", + "query_expression": "children", + "range_expression": "children", + "ref_expression": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", + "switch_expression": "children", + "throw_expression": "children", + "typeof_expression": "children", + "with_expression": "children", + "modifier": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -2651,60 +2272,61 @@ "type": "parenthesized_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", - "with_expression": "children" + "typeof_expression": "children", + "with_expression": "children", + "unary_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -2755,286 +2377,634 @@ "type": "postfix_unary_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "pragma_directive": { - "type": "pragma_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "identifier": "children", - "integer_literal": "children", - "preproc_string_literal": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, "prefix_unary_expression": { "type": "prefix_unary_expression", - "singleFieldNames": ["argument", "operator"], + "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "primary_constructor_base_type": { - "type": "primary_constructor_base_type", - "singleFieldNames": ["type"], - "nodeTypeToMultipleFieldName": { - "argument_list": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "property_declaration": { - "type": "property_declaration", - "singleFieldNames": ["accessors", "name", "type", "value"], - "nodeTypeToMultipleFieldName": { - "attribute_list": "children", - "explicit_interface_specifier": "children", - "modifier": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "property_pattern_clause": { - "type": "property_pattern_clause", + "preproc_define": { + "type": "preproc_define", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "subpattern": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "qualified_name": { - "type": "qualified_name", - "singleFieldNames": ["name", "qualifier"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "query_continuation": { - "type": "query_continuation", - "singleFieldNames": ["name"], - "nodeTypeToMultipleFieldName": { - "from_clause": "children", - "group_clause": "children", - "join_clause": "children", - "let_clause": "children", - "order_by_clause": "children", - "query_continuation": "children", - "select_clause": "children", - "where_clause": "children" + "preproc_arg": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "query_expression": { - "type": "query_expression", - "singleFieldNames": [], + "preproc_elif": { + "type": "preproc_elif", + "singleFieldNames": ["alternative", "condition"], "nodeTypeToMultipleFieldName": { - "from_clause": "children", - "group_clause": "children", - "join_clause": "children", - "let_clause": "children", - "order_by_clause": "children", - "query_continuation": "children", - "select_clause": "children", - "where_clause": "children" + "class_declaration": "children", + "constructor_declaration": "children", + "conversion_operator_declaration": "children", + "delegate_declaration": "children", + "destructor_declaration": "children", + "enum_declaration": "children", + "event_declaration": "children", + "event_field_declaration": "children", + "field_declaration": "children", + "indexer_declaration": "children", + "interface_declaration": "children", + "method_declaration": "children", + "namespace_declaration": "children", + "operator_declaration": "children", + "preproc_if": "children", + "property_declaration": "children", + "record_declaration": "children", + "struct_declaration": "children", + "using_directive": "children", + "enum_member_declaration": "children", + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", + "anonymous_method_expression": "children", + "anonymous_object_creation_expression": "children", + "array_creation_expression": "children", + "as_expression": "children", + "assignment_expression": "children", + "await_expression": "children", + "base": "children", + "binary_expression": "children", + "cast_expression": "children", + "checked_expression": "children", + "conditional_access_expression": "children", + "conditional_expression": "children", + "default_expression": "children", + "implicit_array_creation_expression": "children", + "implicit_object_creation_expression": "children", + "implicit_stackalloc_expression": "children", + "initializer_expression": "children", + "interpolated_string_expression": "children", + "invocation_expression": "children", + "is_expression": "children", + "is_pattern_expression": "children", + "lambda_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", + "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", + "object_creation_expression": "children", + "postfix_unary_expression": "children", + "query_expression": "children", + "range_expression": "children", + "ref_expression": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", + "switch_expression": "children", + "throw_expression": "children", + "typeof_expression": "children", + "with_expression": "children", + "extern_alias_directive": "children", + "file_scoped_namespace_declaration": "children", + "global_attribute": "children", + "block": "children", + "break_statement": "children", + "checked_statement": "children", + "continue_statement": "children", + "do_statement": "children", + "empty_statement": "children", + "expression_statement": "children", + "fixed_statement": "children", + "for_statement": "children", + "foreach_statement": "children", + "goto_statement": "children", + "if_statement": "children", + "labeled_statement": "children", + "local_declaration_statement": "children", + "local_function_statement": "children", + "lock_statement": "children", + "return_statement": "children", + "switch_statement": "children", + "throw_statement": "children", + "try_statement": "children", + "unsafe_statement": "children", + "using_statement": "children", + "while_statement": "children", + "yield_statement": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "range_expression": { - "type": "range_expression", + "preproc_else": { + "type": "preproc_else", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "class_declaration": "children", + "constructor_declaration": "children", + "conversion_operator_declaration": "children", + "delegate_declaration": "children", + "destructor_declaration": "children", + "enum_declaration": "children", + "event_declaration": "children", + "event_field_declaration": "children", + "field_declaration": "children", + "indexer_declaration": "children", + "interface_declaration": "children", + "method_declaration": "children", + "namespace_declaration": "children", + "operator_declaration": "children", + "preproc_if": "children", + "property_declaration": "children", + "record_declaration": "children", + "struct_declaration": "children", + "using_directive": "children", + "enum_member_declaration": "children", + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", + "implicit_array_creation_expression": "children", + "implicit_object_creation_expression": "children", + "implicit_stackalloc_expression": "children", + "initializer_expression": "children", + "interpolated_string_expression": "children", + "invocation_expression": "children", + "is_expression": "children", + "is_pattern_expression": "children", + "lambda_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", + "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", + "object_creation_expression": "children", + "postfix_unary_expression": "children", + "query_expression": "children", + "range_expression": "children", + "ref_expression": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", + "switch_expression": "children", + "throw_expression": "children", + "typeof_expression": "children", + "with_expression": "children", + "extern_alias_directive": "children", + "file_scoped_namespace_declaration": "children", + "global_attribute": "children", + "block": "children", + "break_statement": "children", + "checked_statement": "children", + "continue_statement": "children", + "do_statement": "children", + "empty_statement": "children", + "expression_statement": "children", + "fixed_statement": "children", + "for_statement": "children", + "foreach_statement": "children", + "goto_statement": "children", + "if_statement": "children", + "labeled_statement": "children", + "local_declaration_statement": "children", + "local_function_statement": "children", + "lock_statement": "children", + "return_statement": "children", + "switch_statement": "children", + "throw_statement": "children", + "try_statement": "children", + "unsafe_statement": "children", + "using_statement": "children", + "while_statement": "children", + "yield_statement": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "preproc_endregion": { + "type": "preproc_endregion", + "singleFieldNames": ["content"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "preproc_error": { + "type": "preproc_error", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "preproc_arg": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "preproc_if": { + "type": "preproc_if", + "singleFieldNames": ["alternative", "condition"], + "nodeTypeToMultipleFieldName": { + "class_declaration": "children", + "constructor_declaration": "children", + "conversion_operator_declaration": "children", + "delegate_declaration": "children", + "destructor_declaration": "children", + "enum_declaration": "children", + "event_declaration": "children", + "event_field_declaration": "children", + "field_declaration": "children", + "indexer_declaration": "children", + "interface_declaration": "children", + "method_declaration": "children", + "namespace_declaration": "children", + "operator_declaration": "children", + "preproc_if": "children", + "property_declaration": "children", + "record_declaration": "children", + "struct_declaration": "children", + "using_directive": "children", + "enum_member_declaration": "children", "element_access_expression": "children", "element_binding_expression": "children", "generic_name": "children", - "global": "children", "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", + "anonymous_method_expression": "children", + "anonymous_object_creation_expression": "children", + "array_creation_expression": "children", + "as_expression": "children", + "assignment_expression": "children", + "await_expression": "children", + "base": "children", + "binary_expression": "children", + "cast_expression": "children", + "checked_expression": "children", + "conditional_access_expression": "children", + "conditional_expression": "children", + "default_expression": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", + "typeof_expression": "children", + "with_expression": "children", + "extern_alias_directive": "children", + "file_scoped_namespace_declaration": "children", + "global_attribute": "children", + "block": "children", + "break_statement": "children", + "checked_statement": "children", + "continue_statement": "children", + "do_statement": "children", + "empty_statement": "children", + "expression_statement": "children", + "fixed_statement": "children", + "for_statement": "children", + "foreach_statement": "children", + "goto_statement": "children", + "if_statement": "children", + "labeled_statement": "children", + "local_declaration_statement": "children", + "local_function_statement": "children", + "lock_statement": "children", + "return_statement": "children", + "switch_statement": "children", + "throw_statement": "children", + "try_statement": "children", + "unsafe_statement": "children", + "using_statement": "children", + "while_statement": "children", + "yield_statement": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "preproc_line": { + "type": "preproc_line", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "integer_literal": "children", + "string_literal": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "preproc_nullable": { + "type": "preproc_nullable", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "preproc_pragma": { + "type": "preproc_pragma", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "identifier": "children", + "integer_literal": "children", + "string_literal": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "preproc_region": { + "type": "preproc_region", + "singleFieldNames": ["content"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "preproc_undef": { + "type": "preproc_undef", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "preproc_arg": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "primary_constructor_base_type": { + "type": "primary_constructor_base_type", + "singleFieldNames": ["type"], + "nodeTypeToMultipleFieldName": { + "argument_list": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "property_declaration": { + "type": "property_declaration", + "singleFieldNames": ["accessors", "name", "type", "value"], + "nodeTypeToMultipleFieldName": { + "attribute_list": "children", + "explicit_interface_specifier": "children", + "modifier": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "property_pattern_clause": { + "type": "property_pattern_clause", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "subpattern": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "qualified_name": { + "type": "qualified_name", + "singleFieldNames": ["name", "qualifier"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "query_expression": { + "type": "query_expression", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "from_clause": "children", + "group_clause": "children", + "identifier": "children", + "join_clause": "children", + "let_clause": "children", + "order_by_clause": "children", + "select_clause": "children", + "where_clause": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "range_expression": { + "type": "range_expression", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", "tuple_expression": "children", - "type_of_expression": "children", + "anonymous_method_expression": "children", + "anonymous_object_creation_expression": "children", + "array_creation_expression": "children", + "as_expression": "children", + "assignment_expression": "children", + "await_expression": "children", + "base": "children", + "binary_expression": "children", + "cast_expression": "children", + "checked_expression": "children", + "conditional_access_expression": "children", + "conditional_expression": "children", + "default_expression": "children", + "implicit_array_creation_expression": "children", + "implicit_object_creation_expression": "children", + "implicit_stackalloc_expression": "children", + "initializer_expression": "children", + "interpolated_string_expression": "children", + "invocation_expression": "children", + "is_expression": "children", + "is_pattern_expression": "children", + "lambda_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", + "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", "verbatim_string_literal": "children", + "makeref_expression": "children", + "object_creation_expression": "children", + "postfix_unary_expression": "children", + "preproc_if": "children", + "query_expression": "children", + "range_expression": "children", + "ref_expression": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", + "switch_expression": "children", + "throw_expression": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "record_declaration": { - "type": "record_declaration", - "singleFieldNames": [ - "bases", - "body", - "name", - "parameters", - "type_parameters" - ], + "raw_string_literal": { + "type": "raw_string_literal", + "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "attribute_list": "children", - "modifier": "children", - "type_parameter_constraints_clause": "children" + "raw_string_content": "children", + "raw_string_end": "children", + "raw_string_start": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "record_struct_declaration": { - "type": "record_struct_declaration", - "singleFieldNames": [ - "bases", - "body", - "name", - "parameters", - "type_parameters" - ], + "record_declaration": { + "type": "record_declaration", + "singleFieldNames": ["body", "name"], "nodeTypeToMultipleFieldName": { "attribute_list": "children", + "base_list": "children", "modifier": "children", - "type_parameter_constraints_clause": "children" + "parameter_list": "children", + "type_parameter_constraints_clause": "children", + "type_parameter_list": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -3053,59 +3023,59 @@ "type": "ref_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -3116,146 +3086,130 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "ref_type_expression": { - "type": "ref_type_expression", + "reftype_expression": { + "type": "reftype_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "ref_value_expression": { - "type": "ref_value_expression", + "refvalue_expression": { + "type": "refvalue_expression", "singleFieldNames": ["type", "value"], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "reference_directive": { - "type": "reference_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "preproc_string_literal": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "region_directive": { - "type": "region_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "preproc_message": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, "relational_pattern": { "type": "relational_pattern", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -3264,59 +3218,59 @@ "type": "return_statement", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -3331,144 +3285,71 @@ "type": "select_clause", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "anonymous_method_expression": "children", - "anonymous_object_creation_expression": "children", - "array_creation_expression": "children", - "as_expression": "children", - "assignment_expression": "children", - "await_expression": "children", - "base_expression": "children", - "binary_expression": "children", - "boolean_literal": "children", - "cast_expression": "children", - "character_literal": "children", - "checked_expression": "children", - "conditional_access_expression": "children", - "conditional_expression": "children", - "default_expression": "children", "element_access_expression": "children", "element_binding_expression": "children", "generic_name": "children", - "global": "children", "identifier": "children", - "implicit_array_creation_expression": "children", - "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", - "initializer_expression": "children", - "integer_literal": "children", - "interpolated_string_expression": "children", - "invocation_expression": "children", - "is_expression": "children", - "is_pattern_expression": "children", - "lambda_expression": "children", - "make_ref_expression": "children", "member_access_expression": "children", - "null_literal": "children", - "object_creation_expression": "children", "parenthesized_expression": "children", - "postfix_unary_expression": "children", "prefix_unary_expression": "children", - "query_expression": "children", - "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", - "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", - "switch_expression": "children", - "this_expression": "children", - "throw_expression": "children", + "this": "children", "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", - "with_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "shebang_directive": { - "type": "shebang_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "simple_assignment_expression": { - "type": "simple_assignment_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "size_of_expression": { - "type": "size_of_expression", + "sizeof_expression": { + "type": "sizeof_expression", "singleFieldNames": ["type"], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "slice_pattern": { - "type": "slice_pattern", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "stack_alloc_array_creation_expression": { - "type": "stack_alloc_array_creation_expression", + "stackalloc_expression": { + "type": "stackalloc_expression", "singleFieldNames": ["type"], "nodeTypeToMultipleFieldName": { "initializer_expression": "children" @@ -3480,18 +3361,27 @@ "singleFieldNames": [], "nodeTypeToMultipleFieldName": { "escape_sequence": "children", - "string_literal_encoding": "children", - "string_literal_fragment": "children" + "string_literal_content": "children", + "string_literal_encoding": "children" }, "multipleOrChildrenFieldNames": ["children"] }, + "string_literal_content": { + "type": "string_literal_content", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "struct_declaration": { "type": "struct_declaration", - "singleFieldNames": ["bases", "body", "name", "type_parameters"], + "singleFieldNames": ["body", "name"], "nodeTypeToMultipleFieldName": { "attribute_list": "children", + "base_list": "children", "modifier": "children", - "type_parameter_constraints_clause": "children" + "parameter_list": "children", + "type_parameter_constraints_clause": "children", + "type_parameter_list": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -3499,11 +3389,64 @@ "type": "subpattern", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", + "anonymous_method_expression": "children", + "anonymous_object_creation_expression": "children", + "array_creation_expression": "children", + "as_expression": "children", + "assignment_expression": "children", + "await_expression": "children", + "base": "children", + "binary_expression": "children", + "cast_expression": "children", + "checked_expression": "children", + "conditional_access_expression": "children", + "conditional_expression": "children", + "default_expression": "children", + "implicit_array_creation_expression": "children", + "implicit_object_creation_expression": "children", + "implicit_stackalloc_expression": "children", + "initializer_expression": "children", + "interpolated_string_expression": "children", + "invocation_expression": "children", + "is_expression": "children", + "is_pattern_expression": "children", + "lambda_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", + "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", + "object_creation_expression": "children", + "postfix_unary_expression": "children", + "preproc_if": "children", + "query_expression": "children", + "range_expression": "children", + "ref_expression": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", + "switch_expression": "children", + "throw_expression": "children", + "typeof_expression": "children", + "with_expression": "children", "and_pattern": "children", "constant_pattern": "children", "declaration_pattern": "children", "discard": "children", - "expression_colon": "children", "list_pattern": "children", "negated_pattern": "children", "or_pattern": "children", @@ -3527,121 +3470,195 @@ "type": "switch_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", + "implicit_array_creation_expression": "children", + "implicit_object_creation_expression": "children", + "implicit_stackalloc_expression": "children", + "initializer_expression": "children", + "interpolated_string_expression": "children", + "invocation_expression": "children", + "is_expression": "children", + "is_pattern_expression": "children", + "lambda_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", + "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", + "object_creation_expression": "children", + "postfix_unary_expression": "children", + "preproc_if": "children", + "query_expression": "children", + "range_expression": "children", + "ref_expression": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", + "switch_expression": "children", + "throw_expression": "children", + "typeof_expression": "children", + "with_expression": "children", + "switch_expression_arm": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "switch_expression_arm": { + "type": "switch_expression_arm", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { "element_access_expression": "children", "element_binding_expression": "children", "generic_name": "children", - "global": "children", "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", + "anonymous_method_expression": "children", + "anonymous_object_creation_expression": "children", + "array_creation_expression": "children", + "as_expression": "children", + "assignment_expression": "children", + "await_expression": "children", + "base": "children", + "binary_expression": "children", + "cast_expression": "children", + "checked_expression": "children", + "conditional_access_expression": "children", + "conditional_expression": "children", + "default_expression": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children", - "switch_expression_arm": "children" + "and_pattern": "children", + "constant_pattern": "children", + "declaration_pattern": "children", + "discard": "children", + "list_pattern": "children", + "negated_pattern": "children", + "or_pattern": "children", + "parenthesized_pattern": "children", + "recursive_pattern": "children", + "relational_pattern": "children", + "type_pattern": "children", + "var_pattern": "children", + "when_clause": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "switch_expression_arm": { - "type": "switch_expression_arm", + "switch_section": { + "type": "switch_section", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children", "and_pattern": "children", "constant_pattern": "children", @@ -3655,14 +3672,6 @@ "relational_pattern": "children", "type_pattern": "children", "var_pattern": "children", - "when_clause": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "switch_section": { - "type": "switch_section", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { "block": "children", "break_statement": "children", "checked_statement": "children", @@ -3671,8 +3680,8 @@ "empty_statement": "children", "expression_statement": "children", "fixed_statement": "children", - "for_each_statement": "children", "for_statement": "children", + "foreach_statement": "children", "goto_statement": "children", "if_statement": "children", "labeled_statement": "children", @@ -3687,9 +3696,7 @@ "using_statement": "children", "while_statement": "children", "yield_statement": "children", - "case_pattern_switch_label": "children", - "case_switch_label": "children", - "default_switch_label": "children" + "when_clause": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -3699,69 +3706,63 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "this_expression": { - "type": "this_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, "throw_expression": { "type": "throw_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -3770,59 +3771,59 @@ "type": "throw_statement", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -3876,7 +3877,6 @@ "array_type": "children", "function_pointer_type": "children", "generic_name": "children", - "global": "children", "identifier": "children", "implicit_type": "children", "nullable_type": "children", @@ -3889,18 +3889,6 @@ }, "multipleOrChildrenFieldNames": ["children"] }, - "type_constraint": { - "type": "type_constraint", - "singleFieldNames": ["type"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "type_of_expression": { - "type": "type_of_expression", - "singleFieldNames": ["type"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, "type_parameter": { "type": "type_parameter", "singleFieldNames": ["name"], @@ -3911,21 +3899,20 @@ }, "type_parameter_constraint": { "type": "type_parameter_constraint", - "singleFieldNames": [], + "singleFieldNames": ["type"], "nodeTypeToMultipleFieldName": { - "constructor_constraint": "children", - "type_constraint": "children" + "constructor_constraint": "children" }, "multipleOrChildrenFieldNames": ["children"] }, "type_parameter_constraints_clause": { "type": "type_parameter_constraints_clause", - "singleFieldNames": ["target"], + "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - ",": "constraints", - "type_parameter_constraint": "constraints" + "identifier": "children", + "type_parameter_constraint": "children" }, - "multipleOrChildrenFieldNames": ["constraints"] + "multipleOrChildrenFieldNames": ["children"] }, "type_parameter_list": { "type": "type_parameter_list", @@ -3941,13 +3928,17 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "undef_directive": { - "type": "undef_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "identifier": "children" - }, - "multipleOrChildrenFieldNames": ["children"] + "typeof_expression": { + "type": "typeof_expression", + "singleFieldNames": ["type"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "unary_expression": { + "type": "unary_expression", + "singleFieldNames": ["argument", "operator"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] }, "unsafe_statement": { "type": "unsafe_statement", @@ -3959,67 +3950,81 @@ }, "using_directive": { "type": "using_directive", - "singleFieldNames": ["alias", "name"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] + "singleFieldNames": ["name"], + "nodeTypeToMultipleFieldName": { + "alias_qualified_name": "children", + "array_type": "children", + "function_pointer_type": "children", + "generic_name": "children", + "identifier": "children", + "implicit_type": "children", + "nullable_type": "children", + "pointer_type": "children", + "predefined_type": "children", + "qualified_name": "children", + "ref_type": "children", + "scoped_type": "children", + "tuple_type": "children" + }, + "multipleOrChildrenFieldNames": ["children"] }, "using_statement": { "type": "using_statement", "singleFieldNames": ["body"], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children", "variable_declaration": "children" }, @@ -4047,76 +4052,121 @@ "singleFieldNames": ["name"], "nodeTypeToMultipleFieldName": { "bracketed_argument_list": "children", - "equals_value_clause": "children", + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", + "anonymous_method_expression": "children", + "anonymous_object_creation_expression": "children", + "array_creation_expression": "children", + "as_expression": "children", + "assignment_expression": "children", + "await_expression": "children", + "base": "children", + "binary_expression": "children", + "cast_expression": "children", + "checked_expression": "children", + "conditional_access_expression": "children", + "conditional_expression": "children", + "default_expression": "children", + "implicit_array_creation_expression": "children", + "implicit_object_creation_expression": "children", + "implicit_stackalloc_expression": "children", + "initializer_expression": "children", + "interpolated_string_expression": "children", + "invocation_expression": "children", + "is_expression": "children", + "is_pattern_expression": "children", + "lambda_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", + "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", + "object_creation_expression": "children", + "postfix_unary_expression": "children", + "preproc_if": "children", + "query_expression": "children", + "range_expression": "children", + "ref_expression": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", + "switch_expression": "children", + "throw_expression": "children", + "typeof_expression": "children", + "with_expression": "children", "tuple_pattern": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "warning_directive": { - "type": "warning_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "preproc_message": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, "when_clause": { "type": "when_clause", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", - "conditional_expression": "children", - "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", + "conditional_expression": "children", + "default_expression": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -4125,215 +4175,189 @@ "type": "where_clause", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, "while_statement": { "type": "while_statement", + "singleFieldNames": ["body", "condition"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "with_expression": { + "type": "with_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children", - "block": "children", - "break_statement": "children", - "checked_statement": "children", - "continue_statement": "children", - "do_statement": "children", - "empty_statement": "children", - "expression_statement": "children", - "fixed_statement": "children", - "for_each_statement": "children", - "for_statement": "children", - "goto_statement": "children", - "if_statement": "children", - "labeled_statement": "children", - "local_declaration_statement": "children", - "local_function_statement": "children", - "lock_statement": "children", - "return_statement": "children", - "switch_statement": "children", - "throw_statement": "children", - "try_statement": "children", - "unsafe_statement": "children", - "using_statement": "children", - "while_statement": "children", - "yield_statement": "children" + "with_initializer": "children" }, "multipleOrChildrenFieldNames": ["children"] }, - "with_expression": { - "type": "with_expression", + "with_initializer": { + "type": "with_initializer", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", - "with_expression": "children", - "with_initializer_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "with_initializer_expression": { - "type": "with_initializer_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "simple_assignment_expression": "children" + "typeof_expression": "children", + "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -4341,59 +4365,59 @@ "type": "yield_statement", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "element_access_expression": "children", + "element_binding_expression": "children", + "generic_name": "children", + "identifier": "children", + "member_access_expression": "children", + "parenthesized_expression": "children", + "prefix_unary_expression": "children", + "this": "children", + "tuple_expression": "children", "anonymous_method_expression": "children", "anonymous_object_creation_expression": "children", "array_creation_expression": "children", "as_expression": "children", "assignment_expression": "children", "await_expression": "children", - "base_expression": "children", + "base": "children", "binary_expression": "children", - "boolean_literal": "children", "cast_expression": "children", - "character_literal": "children", "checked_expression": "children", "conditional_access_expression": "children", "conditional_expression": "children", "default_expression": "children", - "element_access_expression": "children", - "element_binding_expression": "children", - "generic_name": "children", - "global": "children", - "identifier": "children", "implicit_array_creation_expression": "children", "implicit_object_creation_expression": "children", - "implicit_stack_alloc_array_creation_expression": "children", + "implicit_stackalloc_expression": "children", "initializer_expression": "children", - "integer_literal": "children", "interpolated_string_expression": "children", "invocation_expression": "children", "is_expression": "children", "is_pattern_expression": "children", "lambda_expression": "children", - "make_ref_expression": "children", - "member_access_expression": "children", + "boolean_literal": "children", + "character_literal": "children", + "integer_literal": "children", "null_literal": "children", + "raw_string_literal": "children", + "real_literal": "children", + "string_literal": "children", + "verbatim_string_literal": "children", + "makeref_expression": "children", "object_creation_expression": "children", - "parenthesized_expression": "children", "postfix_unary_expression": "children", - "prefix_unary_expression": "children", + "preproc_if": "children", "query_expression": "children", "range_expression": "children", - "raw_string_literal": "children", - "real_literal": "children", "ref_expression": "children", - "ref_type_expression": "children", - "ref_value_expression": "children", - "size_of_expression": "children", - "stack_alloc_array_creation_expression": "children", - "string_literal": "children", + "reftype_expression": "children", + "refvalue_expression": "children", + "sizeof_expression": "children", + "stackalloc_expression": "children", "switch_expression": "children", - "this_expression": "children", "throw_expression": "children", - "tuple_expression": "children", - "type_of_expression": "children", - "verbatim_string_literal": "children", + "typeof_expression": "children", "with_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -4416,6 +4440,12 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "%=": { + "type": "%=", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "&": { "type": "&", "singleFieldNames": [], @@ -4428,12 +4458,24 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "&=": { + "type": "&=", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "*": { "type": "*", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "*=": { + "type": "*=", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "+": { "type": "+", "singleFieldNames": [], @@ -4446,6 +4488,12 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "+=": { + "type": "+=", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "-": { "type": "-", "singleFieldNames": [], @@ -4458,14 +4506,20 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "-=": { + "type": "-=", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "/": { "type": "/", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - ";": { - "type": ";", + "/=": { + "type": "/=", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] @@ -4482,12 +4536,24 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "<<=": { + "type": "<<=", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "<=": { "type": "<=", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "=": { + "type": "=", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "==": { "type": "==", "singleFieldNames": [], @@ -4512,24 +4578,48 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + ">>=": { + "type": ">>=", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, ">>>": { "type": ">>>", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + ">>>=": { + "type": ">>>=", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "??": { "type": "??", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "??=": { + "type": "??=", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "^": { "type": "^", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "^=": { + "type": "^=", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "add": { "type": "add", "singleFieldNames": [], @@ -4548,8 +4638,8 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "character_literal_unescaped": { - "type": "character_literal_unescaped", + "character_literal_content": { + "type": "character_literal_content", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] @@ -4566,12 +4656,6 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "endif_directive": { - "type": "endif_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, "escape_sequence": { "type": "escape_sequence", "singleFieldNames": [], @@ -4602,6 +4686,24 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "interpolation_brace": { + "type": "interpolation_brace", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "interpolation_quote": { + "type": "interpolation_quote", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "interpolation_start": { + "type": "interpolation_start", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "is": { "type": "is", "singleFieldNames": [], @@ -4620,38 +4722,32 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "parameter_modifier": { - "type": "parameter_modifier", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, "predefined_type": { "type": "predefined_type", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "preproc_integer_literal": { - "type": "preproc_integer_literal", + "preproc_arg": { + "type": "preproc_arg", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "preproc_message": { - "type": "preproc_message", + "raw_string_content": { + "type": "raw_string_content", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "preproc_string_literal": { - "type": "preproc_string_literal", + "raw_string_end": { + "type": "raw_string_end", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "raw_string_literal": { - "type": "raw_string_literal", + "raw_string_start": { + "type": "raw_string_start", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] @@ -4674,14 +4770,20 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "string_literal_encoding": { - "type": "string_literal_encoding", + "shebang_directive": { + "type": "shebang_directive", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "string_content": { + "type": "string_content", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, - "string_literal_fragment": { - "type": "string_literal_fragment", + "string_literal_encoding": { + "type": "string_literal_encoding", "singleFieldNames": [], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] @@ -4704,6 +4806,12 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "|=": { + "type": "|=", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "||": { "type": "||", "singleFieldNames": [], diff --git a/packages/tree-sitter-port/output/tree-sitter-c-sharp/meta.json b/packages/tree-sitter-port/output/tree-sitter-c-sharp/meta.json index 38de111..61fdd02 100644 --- a/packages/tree-sitter-port/output/tree-sitter-c-sharp/meta.json +++ b/packages/tree-sitter-port/output/tree-sitter-c-sharp/meta.json @@ -1,5 +1,5 @@ { "name": "tree-sitter-c-sharp", - "version": "0.20.0", - "generatedAt": "2023-08-13T18:16:24.586Z" + "version": "0.21.2", + "generatedAt": "2024-06-26T15:41:38.824Z" } diff --git a/packages/tree-sitter-port/output/tree-sitter-c-sharp/parser.wasm b/packages/tree-sitter-port/output/tree-sitter-c-sharp/parser.wasm index 9ba6b75..65e8511 100755 Binary files a/packages/tree-sitter-port/output/tree-sitter-c-sharp/parser.wasm and b/packages/tree-sitter-port/output/tree-sitter-c-sharp/parser.wasm differ diff --git a/packages/tree-sitter-port/output/tree-sitter-c/fields-meta.json b/packages/tree-sitter-port/output/tree-sitter-c/fields-meta.json index a0f4b0d..d28eed0 100644 --- a/packages/tree-sitter-port/output/tree-sitter-c/fields-meta.json +++ b/packages/tree-sitter-port/output/tree-sitter-c/fields-meta.json @@ -20,7 +20,8 @@ "abstract_array_declarator": "children", "abstract_function_declarator": "children", "abstract_parenthesized_declarator": "children", - "abstract_pointer_declarator": "children" + "abstract_pointer_declarator": "children", + "ms_call_modifier": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -28,10 +29,44 @@ "type": "abstract_pointer_declarator", "singleFieldNames": ["declarator"], "nodeTypeToMultipleFieldName": { + "ms_pointer_modifier": "children", "type_qualifier": "children" }, "multipleOrChildrenFieldNames": ["children"] }, + "alignas_qualifier": { + "type": "alignas_qualifier", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "alignof_expression": "children", + "assignment_expression": "children", + "binary_expression": "children", + "call_expression": "children", + "cast_expression": "children", + "char_literal": "children", + "compound_literal_expression": "children", + "concatenated_string": "children", + "conditional_expression": "children", + "false": "children", + "field_expression": "children", + "generic_expression": "children", + "gnu_asm_expression": "children", + "identifier": "children", + "null": "children", + "number_literal": "children", + "offsetof_expression": "children", + "parenthesized_expression": "children", + "pointer_expression": "children", + "sizeof_expression": "children", + "string_literal": "children", + "subscript_expression": "children", + "true": "children", + "unary_expression": "children", + "update_expression": "children", + "type_descriptor": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, "alignof_expression": { "type": "alignof_expression", "singleFieldNames": ["type"], @@ -42,6 +77,7 @@ "type": "argument_list", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "compound_statement": "children", "alignof_expression": "children", "assignment_expression": "children", "binary_expression": "children", @@ -67,7 +103,6 @@ "true": "children", "unary_expression": "children", "update_expression": "children", - "compound_statement": "children", "preproc_defined": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -131,6 +166,7 @@ "type": "attributed_statement", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "attribute_declaration": "children", "attributed_statement": "children", "break_statement": "children", "case_statement": "children", @@ -143,9 +179,10 @@ "if_statement": "children", "labeled_statement": "children", "return_statement": "children", + "seh_leave_statement": "children", + "seh_try_statement": "children", "switch_statement": "children", - "while_statement": "children", - "attribute_declaration": "children" + "while_statement": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -215,6 +252,8 @@ "if_statement": "children", "labeled_statement": "children", "return_statement": "children", + "seh_leave_statement": "children", + "seh_try_statement": "children", "switch_statement": "children", "type_definition": "children", "while_statement": "children" @@ -252,6 +291,15 @@ "type": "compound_statement", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "declaration": "children", + "function_definition": "children", + "linkage_specification": "children", + "preproc_call": "children", + "preproc_def": "children", + "preproc_function_def": "children", + "preproc_if": "children", + "preproc_ifdef": "children", + "preproc_include": "children", "attributed_statement": "children", "break_statement": "children", "case_statement": "children", @@ -264,25 +312,18 @@ "if_statement": "children", "labeled_statement": "children", "return_statement": "children", + "seh_leave_statement": "children", + "seh_try_statement": "children", "switch_statement": "children", "while_statement": "children", + "type_definition": "children", "enum_specifier": "children", "macro_type_specifier": "children", "primitive_type": "children", "sized_type_specifier": "children", "struct_specifier": "children", "type_identifier": "children", - "union_specifier": "children", - "declaration": "children", - "function_definition": "children", - "linkage_specification": "children", - "preproc_call": "children", - "preproc_def": "children", - "preproc_function_def": "children", - "preproc_if": "children", - "preproc_ifdef": "children", - "preproc_include": "children", - "type_definition": "children" + "union_specifier": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -314,11 +355,12 @@ "array_declarator": "declarator", "attributed_declarator": "declarator", "function_declarator": "declarator", + "gnu_asm_expression": "declarator", "identifier": "declarator", + "init_declarator": "declarator", + "ms_call_modifier": "declarator", "parenthesized_declarator": "declarator", "pointer_declarator": "declarator", - "gnu_asm_expression": "declarator", - "init_declarator": "declarator", "attribute_declaration": "children", "attribute_specifier": "children", "ms_declspec_modifier": "children", @@ -331,6 +373,15 @@ "type": "declaration_list", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "declaration": "children", + "function_definition": "children", + "linkage_specification": "children", + "preproc_call": "children", + "preproc_def": "children", + "preproc_function_def": "children", + "preproc_if": "children", + "preproc_ifdef": "children", + "preproc_include": "children", "attributed_statement": "children", "break_statement": "children", "case_statement": "children", @@ -343,25 +394,18 @@ "if_statement": "children", "labeled_statement": "children", "return_statement": "children", + "seh_leave_statement": "children", + "seh_try_statement": "children", "switch_statement": "children", "while_statement": "children", + "type_definition": "children", "enum_specifier": "children", "macro_type_specifier": "children", "primitive_type": "children", "sized_type_specifier": "children", "struct_specifier": "children", "type_identifier": "children", - "union_specifier": "children", - "declaration": "children", - "function_definition": "children", - "linkage_specification": "children", - "preproc_call": "children", - "preproc_def": "children", - "preproc_function_def": "children", - "preproc_if": "children", - "preproc_ifdef": "children", - "preproc_include": "children", - "type_definition": "children" + "union_specifier": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -387,6 +431,8 @@ "if_statement": "children", "labeled_statement": "children", "return_statement": "children", + "seh_leave_statement": "children", + "seh_try_statement": "children", "switch_statement": "children", "while_statement": "children" }, @@ -410,7 +456,10 @@ "type": "enumerator_list", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "enumerator": "children" + "enumerator": "children", + "preproc_call": "children", + "preproc_if": "children", + "preproc_ifdef": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -418,6 +467,7 @@ "type": "expression_statement", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "comma_expression": "children", "alignof_expression": "children", "assignment_expression": "children", "binary_expression": "children", @@ -442,8 +492,7 @@ "subscript_expression": "children", "true": "children", "unary_expression": "children", - "update_expression": "children", - "comma_expression": "children" + "update_expression": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -504,7 +553,9 @@ "singleFieldNames": ["declarator", "parameters"], "nodeTypeToMultipleFieldName": { "attribute_specifier": "children", - "gnu_asm_expression": "children" + "call_expression": "children", + "gnu_asm_expression": "children", + "identifier": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -559,6 +610,7 @@ "type": "gnu_asm_clobber_list", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "concatenated_string": "register", "string_literal": "register" }, "multipleOrChildrenFieldNames": ["register"] @@ -676,7 +728,9 @@ "singleFieldNames": ["value"], "nodeTypeToMultipleFieldName": { "field_designator": "designator", - "subscript_designator": "designator" + "field_identifier": "designator", + "subscript_designator": "designator", + "subscript_range_designator": "designator" }, "multipleOrChildrenFieldNames": ["designator"] }, @@ -696,6 +750,8 @@ "if_statement": "children", "labeled_statement": "children", "return_statement": "children", + "seh_leave_statement": "children", + "seh_try_statement": "children", "switch_statement": "children", "while_statement": "children" }, @@ -798,7 +854,8 @@ "pointer_declarator": "children", "field_identifier": "children", "primitive_type": "children", - "type_identifier": "children" + "type_identifier": "children", + "ms_call_modifier": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -806,6 +863,7 @@ "type": "parenthesized_expression", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "comma_expression": "children", "alignof_expression": "children", "assignment_expression": "children", "binary_expression": "children", @@ -831,7 +889,6 @@ "true": "children", "unary_expression": "children", "update_expression": "children", - "comma_expression": "children", "preproc_defined": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -876,6 +933,17 @@ "type": "preproc_elif", "singleFieldNames": ["alternative", "condition"], "nodeTypeToMultipleFieldName": { + "declaration": "children", + "enumerator": "children", + "field_declaration": "children", + "function_definition": "children", + "linkage_specification": "children", + "preproc_call": "children", + "preproc_def": "children", + "preproc_function_def": "children", + "preproc_if": "children", + "preproc_ifdef": "children", + "preproc_include": "children", "attributed_statement": "children", "break_statement": "children", "case_statement": "children", @@ -888,16 +956,27 @@ "if_statement": "children", "labeled_statement": "children", "return_statement": "children", + "seh_leave_statement": "children", + "seh_try_statement": "children", "switch_statement": "children", "while_statement": "children", + "type_definition": "children", "enum_specifier": "children", "macro_type_specifier": "children", "primitive_type": "children", "sized_type_specifier": "children", "struct_specifier": "children", "type_identifier": "children", - "union_specifier": "children", + "union_specifier": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "preproc_elifdef": { + "type": "preproc_elifdef", + "singleFieldNames": ["alternative", "name"], + "nodeTypeToMultipleFieldName": { "declaration": "children", + "enumerator": "children", "field_declaration": "children", "function_definition": "children", "linkage_specification": "children", @@ -907,14 +986,6 @@ "preproc_if": "children", "preproc_ifdef": "children", "preproc_include": "children", - "type_definition": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "preproc_elifdef": { - "type": "preproc_elifdef", - "singleFieldNames": ["alternative", "name"], - "nodeTypeToMultipleFieldName": { "attributed_statement": "children", "break_statement": "children", "case_statement": "children", @@ -927,16 +998,28 @@ "if_statement": "children", "labeled_statement": "children", "return_statement": "children", + "seh_leave_statement": "children", + "seh_try_statement": "children", "switch_statement": "children", "while_statement": "children", + "type_definition": "children", "enum_specifier": "children", "macro_type_specifier": "children", "primitive_type": "children", "sized_type_specifier": "children", "struct_specifier": "children", "type_identifier": "children", - "union_specifier": "children", + "union_specifier": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "preproc_else": { + "type": "preproc_else", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { "declaration": "children", + "enumerator": "children", + "field_declaration": "children", "function_definition": "children", "linkage_specification": "children", "preproc_call": "children", @@ -945,14 +1028,6 @@ "preproc_if": "children", "preproc_ifdef": "children", "preproc_include": "children", - "type_definition": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "preproc_else": { - "type": "preproc_else", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { "attributed_statement": "children", "break_statement": "children", "case_statement": "children", @@ -965,26 +1040,18 @@ "if_statement": "children", "labeled_statement": "children", "return_statement": "children", + "seh_leave_statement": "children", + "seh_try_statement": "children", "switch_statement": "children", "while_statement": "children", + "type_definition": "children", "enum_specifier": "children", "macro_type_specifier": "children", "primitive_type": "children", "sized_type_specifier": "children", "struct_specifier": "children", "type_identifier": "children", - "union_specifier": "children", - "declaration": "children", - "field_declaration": "children", - "function_definition": "children", - "linkage_specification": "children", - "preproc_call": "children", - "preproc_def": "children", - "preproc_function_def": "children", - "preproc_if": "children", - "preproc_ifdef": "children", - "preproc_include": "children", - "type_definition": "children" + "union_specifier": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -998,6 +1065,17 @@ "type": "preproc_if", "singleFieldNames": ["alternative", "condition"], "nodeTypeToMultipleFieldName": { + "declaration": "children", + "enumerator": "children", + "field_declaration": "children", + "function_definition": "children", + "linkage_specification": "children", + "preproc_call": "children", + "preproc_def": "children", + "preproc_function_def": "children", + "preproc_if": "children", + "preproc_ifdef": "children", + "preproc_include": "children", "attributed_statement": "children", "break_statement": "children", "case_statement": "children", @@ -1010,16 +1088,27 @@ "if_statement": "children", "labeled_statement": "children", "return_statement": "children", + "seh_leave_statement": "children", + "seh_try_statement": "children", "switch_statement": "children", "while_statement": "children", + "type_definition": "children", "enum_specifier": "children", "macro_type_specifier": "children", "primitive_type": "children", "sized_type_specifier": "children", "struct_specifier": "children", "type_identifier": "children", - "union_specifier": "children", + "union_specifier": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "preproc_ifdef": { + "type": "preproc_ifdef", + "singleFieldNames": ["alternative", "name"], + "nodeTypeToMultipleFieldName": { "declaration": "children", + "enumerator": "children", "field_declaration": "children", "function_definition": "children", "linkage_specification": "children", @@ -1029,14 +1118,6 @@ "preproc_if": "children", "preproc_ifdef": "children", "preproc_include": "children", - "type_definition": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "preproc_ifdef": { - "type": "preproc_ifdef", - "singleFieldNames": ["alternative", "name"], - "nodeTypeToMultipleFieldName": { "attributed_statement": "children", "break_statement": "children", "case_statement": "children", @@ -1049,26 +1130,18 @@ "if_statement": "children", "labeled_statement": "children", "return_statement": "children", + "seh_leave_statement": "children", + "seh_try_statement": "children", "switch_statement": "children", "while_statement": "children", + "type_definition": "children", "enum_specifier": "children", "macro_type_specifier": "children", "primitive_type": "children", "sized_type_specifier": "children", "struct_specifier": "children", "type_identifier": "children", - "union_specifier": "children", - "declaration": "children", - "field_declaration": "children", - "function_definition": "children", - "linkage_specification": "children", - "preproc_call": "children", - "preproc_def": "children", - "preproc_function_def": "children", - "preproc_if": "children", - "preproc_ifdef": "children", - "preproc_include": "children", - "type_definition": "children" + "union_specifier": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -1090,6 +1163,7 @@ "type": "return_statement", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "comma_expression": "children", "alignof_expression": "children", "assignment_expression": "children", "binary_expression": "children", @@ -1114,8 +1188,34 @@ "subscript_expression": "children", "true": "children", "unary_expression": "children", - "update_expression": "children", - "comma_expression": "children" + "update_expression": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "seh_except_clause": { + "type": "seh_except_clause", + "singleFieldNames": ["body", "filter"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "seh_finally_clause": { + "type": "seh_finally_clause", + "singleFieldNames": ["body"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "seh_leave_statement": { + "type": "seh_leave_statement", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, + "seh_try_statement": { + "type": "seh_try_statement", + "singleFieldNames": ["body"], + "nodeTypeToMultipleFieldName": { + "seh_except_clause": "children", + "seh_finally_clause": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -1193,6 +1293,12 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "subscript_range_designator": { + "type": "subscript_range_designator", + "singleFieldNames": ["end", "start"], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "switch_statement": { "type": "switch_statement", "singleFieldNames": ["body", "condition"], @@ -1203,13 +1309,6 @@ "type": "translation_unit", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "enum_specifier": "children", - "macro_type_specifier": "children", - "primitive_type": "children", - "sized_type_specifier": "children", - "struct_specifier": "children", - "type_identifier": "children", - "union_specifier": "children", "attributed_statement": "children", "break_statement": "children", "case_statement": "children", @@ -1233,6 +1332,13 @@ "return_statement": "children", "switch_statement": "children", "type_definition": "children", + "enum_specifier": "children", + "macro_type_specifier": "children", + "primitive_type": "children", + "sized_type_specifier": "children", + "struct_specifier": "children", + "type_identifier": "children", + "union_specifier": "children", "while_statement": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -1264,8 +1370,10 @@ "type_qualifier": { "type": "type_qualifier", "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] + "nodeTypeToMultipleFieldName": { + "alignas_qualifier": "children" + }, + "multipleOrChildrenFieldNames": ["children"] }, "unary_expression": { "type": "unary_expression", diff --git a/packages/tree-sitter-port/output/tree-sitter-c/meta.json b/packages/tree-sitter-port/output/tree-sitter-c/meta.json index 2b29f5c..bba4b0f 100644 --- a/packages/tree-sitter-port/output/tree-sitter-c/meta.json +++ b/packages/tree-sitter-port/output/tree-sitter-c/meta.json @@ -1,5 +1,5 @@ { "name": "tree-sitter-c", - "version": "0.20.5", - "generatedAt": "2023-08-13T18:16:22.639Z" + "version": "0.21.4", + "generatedAt": "2024-06-26T15:41:27.820Z" } diff --git a/packages/tree-sitter-port/output/tree-sitter-c/parser.wasm b/packages/tree-sitter-port/output/tree-sitter-c/parser.wasm index 8a5e66c..0a801e0 100755 Binary files a/packages/tree-sitter-port/output/tree-sitter-c/parser.wasm and b/packages/tree-sitter-port/output/tree-sitter-c/parser.wasm differ diff --git a/packages/tree-sitter-port/output/tree-sitter-lua/meta.json b/packages/tree-sitter-port/output/tree-sitter-lua/meta.json index 2fe80f7..6b94e7d 100644 --- a/packages/tree-sitter-port/output/tree-sitter-lua/meta.json +++ b/packages/tree-sitter-port/output/tree-sitter-lua/meta.json @@ -1,5 +1,5 @@ { "name": "tree-sitter-lua", - "version": "0.0.19", - "generatedAt": "2023-08-17T17:18:35.528Z" + "version": "0.1.0", + "generatedAt": "2024-06-26T15:41:59.042Z" } diff --git a/packages/tree-sitter-port/output/tree-sitter-lua/parser.wasm b/packages/tree-sitter-port/output/tree-sitter-lua/parser.wasm index 67cccf0..9e28306 100755 Binary files a/packages/tree-sitter-port/output/tree-sitter-lua/parser.wasm and b/packages/tree-sitter-port/output/tree-sitter-lua/parser.wasm differ diff --git a/packages/tree-sitter-port/output/tree-sitter-php/fields-meta.json b/packages/tree-sitter-port/output/tree-sitter-php/fields-meta.json deleted file mode 100644 index efb8d64..0000000 --- a/packages/tree-sitter-port/output/tree-sitter-php/fields-meta.json +++ /dev/null @@ -1,3051 +0,0 @@ -{ - "abstract_modifier": { - "type": "abstract_modifier", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "anonymous_function_creation_expression": { - "type": "anonymous_function_creation_expression", - "singleFieldNames": [ - "attributes", - "body", - "parameters", - "reference_modifier", - "return_type" - ], - "nodeTypeToMultipleFieldName": { - "anonymous_function_use_clause": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "anonymous_function_use_clause": { - "type": "anonymous_function_use_clause", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "by_ref": "children", - "variable_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "argument": { - "type": "argument", - "singleFieldNames": ["name", "reference_modifier"], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children", - "variadic_unpacking": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "arguments": { - "type": "arguments", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "argument": "children", - "variadic_placeholder": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "array_creation_expression": { - "type": "array_creation_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "array_element_initializer": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "array_element_initializer": { - "type": "array_element_initializer", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children", - "by_ref": "children", - "variadic_unpacking": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "arrow_function": { - "type": "arrow_function", - "singleFieldNames": [ - "attributes", - "body", - "parameters", - "reference_modifier", - "return_type" - ], - "nodeTypeToMultipleFieldName": { - "static_modifier": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "assignment_expression": { - "type": "assignment_expression", - "singleFieldNames": ["left", "right"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "attribute": { - "type": "attribute", - "singleFieldNames": ["parameters"], - "nodeTypeToMultipleFieldName": { - "name": "children", - "qualified_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "attribute_group": { - "type": "attribute_group", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "attribute": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "attribute_list": { - "type": "attribute_list", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "attribute_group": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "augmented_assignment_expression": { - "type": "augmented_assignment_expression", - "singleFieldNames": ["left", "operator", "right"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "base_clause": { - "type": "base_clause", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "name": "children", - "qualified_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "binary_expression": { - "type": "binary_expression", - "singleFieldNames": ["left", "operator", "right"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "break_statement": { - "type": "break_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "by_ref": { - "type": "by_ref", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "scoped_call_expression": "children", - "subscript_expression": "children", - "variable_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "case_statement": { - "type": "case_statement", - "singleFieldNames": ["value"], - "nodeTypeToMultipleFieldName": { - "break_statement": "children", - "class_declaration": "children", - "compound_statement": "children", - "const_declaration": "children", - "continue_statement": "children", - "declare_statement": "children", - "do_statement": "children", - "echo_statement": "children", - "empty_statement": "children", - "enum_declaration": "children", - "expression_statement": "children", - "for_statement": "children", - "foreach_statement": "children", - "function_definition": "children", - "function_static_declaration": "children", - "global_declaration": "children", - "goto_statement": "children", - "if_statement": "children", - "interface_declaration": "children", - "named_label_statement": "children", - "namespace_definition": "children", - "namespace_use_declaration": "children", - "return_statement": "children", - "switch_statement": "children", - "trait_declaration": "children", - "try_statement": "children", - "unset_statement": "children", - "while_statement": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "cast_expression": { - "type": "cast_expression", - "singleFieldNames": ["type", "value"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "cast_type": { - "type": "cast_type", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "catch_clause": { - "type": "catch_clause", - "singleFieldNames": ["body", "name", "type"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "class_constant_access_expression": { - "type": "class_constant_access_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "array_creation_expression": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "encapsed_string": "children", - "function_call_expression": "children", - "heredoc": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nowdoc": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "parenthesized_expression": "children", - "qualified_name": "children", - "relative_scope": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "string": "children", - "subscript_expression": "children", - "variable_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "class_declaration": { - "type": "class_declaration", - "singleFieldNames": ["attributes", "body", "modifier", "name"], - "nodeTypeToMultipleFieldName": { - "base_clause": "children", - "class_interface_clause": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "class_interface_clause": { - "type": "class_interface_clause", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "name": "children", - "qualified_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "clone_expression": { - "type": "clone_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "colon_block": { - "type": "colon_block", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "break_statement": "children", - "class_declaration": "children", - "compound_statement": "children", - "const_declaration": "children", - "continue_statement": "children", - "declare_statement": "children", - "do_statement": "children", - "echo_statement": "children", - "empty_statement": "children", - "enum_declaration": "children", - "expression_statement": "children", - "for_statement": "children", - "foreach_statement": "children", - "function_definition": "children", - "function_static_declaration": "children", - "global_declaration": "children", - "goto_statement": "children", - "if_statement": "children", - "interface_declaration": "children", - "named_label_statement": "children", - "namespace_definition": "children", - "namespace_use_declaration": "children", - "return_statement": "children", - "switch_statement": "children", - "trait_declaration": "children", - "try_statement": "children", - "unset_statement": "children", - "while_statement": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "compound_statement": { - "type": "compound_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "break_statement": "children", - "class_declaration": "children", - "compound_statement": "children", - "const_declaration": "children", - "continue_statement": "children", - "declare_statement": "children", - "do_statement": "children", - "echo_statement": "children", - "empty_statement": "children", - "enum_declaration": "children", - "expression_statement": "children", - "for_statement": "children", - "foreach_statement": "children", - "function_definition": "children", - "function_static_declaration": "children", - "global_declaration": "children", - "goto_statement": "children", - "if_statement": "children", - "interface_declaration": "children", - "named_label_statement": "children", - "namespace_definition": "children", - "namespace_use_declaration": "children", - "return_statement": "children", - "switch_statement": "children", - "trait_declaration": "children", - "try_statement": "children", - "unset_statement": "children", - "while_statement": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "conditional_expression": { - "type": "conditional_expression", - "singleFieldNames": ["alternative", "body", "condition"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "const_declaration": { - "type": "const_declaration", - "singleFieldNames": ["attributes", "modifier"], - "nodeTypeToMultipleFieldName": { - "const_element": "children", - "visibility_modifier": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "const_element": { - "type": "const_element", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "continue_statement": { - "type": "continue_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "declaration_list": { - "type": "declaration_list", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "const_declaration": "children", - "method_declaration": "children", - "property_declaration": "children", - "use_declaration": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "declare_directive": { - "type": "declare_directive", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "declare_statement": { - "type": "declare_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "break_statement": "children", - "class_declaration": "children", - "compound_statement": "children", - "const_declaration": "children", - "continue_statement": "children", - "declare_statement": "children", - "do_statement": "children", - "echo_statement": "children", - "empty_statement": "children", - "enum_declaration": "children", - "expression_statement": "children", - "for_statement": "children", - "foreach_statement": "children", - "function_definition": "children", - "function_static_declaration": "children", - "global_declaration": "children", - "goto_statement": "children", - "if_statement": "children", - "interface_declaration": "children", - "named_label_statement": "children", - "namespace_definition": "children", - "namespace_use_declaration": "children", - "return_statement": "children", - "switch_statement": "children", - "trait_declaration": "children", - "try_statement": "children", - "unset_statement": "children", - "while_statement": "children", - "declare_directive": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "default_statement": { - "type": "default_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "break_statement": "children", - "class_declaration": "children", - "compound_statement": "children", - "const_declaration": "children", - "continue_statement": "children", - "declare_statement": "children", - "do_statement": "children", - "echo_statement": "children", - "empty_statement": "children", - "enum_declaration": "children", - "expression_statement": "children", - "for_statement": "children", - "foreach_statement": "children", - "function_definition": "children", - "function_static_declaration": "children", - "global_declaration": "children", - "goto_statement": "children", - "if_statement": "children", - "interface_declaration": "children", - "named_label_statement": "children", - "namespace_definition": "children", - "namespace_use_declaration": "children", - "return_statement": "children", - "switch_statement": "children", - "trait_declaration": "children", - "try_statement": "children", - "unset_statement": "children", - "while_statement": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "do_statement": { - "type": "do_statement", - "singleFieldNames": ["body", "condition"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "dynamic_variable_name": { - "type": "dynamic_variable_name", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "echo_statement": { - "type": "echo_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children", - "sequence_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "else_clause": { - "type": "else_clause", - "singleFieldNames": ["body"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "else_if_clause": { - "type": "else_if_clause", - "singleFieldNames": ["body", "condition"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "empty_statement": { - "type": "empty_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "encapsed_string": { - "type": "encapsed_string", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children", - "escape_sequence": "children", - "string_value": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "enum_case": { - "type": "enum_case", - "singleFieldNames": ["attributes", "name", "value"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "enum_declaration": { - "type": "enum_declaration", - "singleFieldNames": ["attributes", "body", "name"], - "nodeTypeToMultipleFieldName": { - "class_interface_clause": "children", - "primitive_type": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "enum_declaration_list": { - "type": "enum_declaration_list", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "enum_case": "children", - "method_declaration": "children", - "use_declaration": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "exponentiation_expression": { - "type": "exponentiation_expression", - "singleFieldNames": ["left", "right"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "expression_statement": { - "type": "expression_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "final_modifier": { - "type": "final_modifier", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "finally_clause": { - "type": "finally_clause", - "singleFieldNames": ["body"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "for_statement": { - "type": "for_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children", - "break_statement": "children", - "class_declaration": "children", - "compound_statement": "children", - "const_declaration": "children", - "continue_statement": "children", - "declare_statement": "children", - "do_statement": "children", - "echo_statement": "children", - "empty_statement": "children", - "enum_declaration": "children", - "expression_statement": "children", - "for_statement": "children", - "foreach_statement": "children", - "function_definition": "children", - "function_static_declaration": "children", - "global_declaration": "children", - "goto_statement": "children", - "if_statement": "children", - "interface_declaration": "children", - "named_label_statement": "children", - "namespace_definition": "children", - "namespace_use_declaration": "children", - "return_statement": "children", - "switch_statement": "children", - "trait_declaration": "children", - "try_statement": "children", - "unset_statement": "children", - "while_statement": "children", - "sequence_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "foreach_statement": { - "type": "foreach_statement", - "singleFieldNames": ["body"], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children", - "by_ref": "children", - "list_literal": "children", - "pair": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "formal_parameters": { - "type": "formal_parameters", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "property_promotion_parameter": "children", - "simple_parameter": "children", - "variadic_parameter": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "function_call_expression": { - "type": "function_call_expression", - "singleFieldNames": ["arguments", "function"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "function_definition": { - "type": "function_definition", - "singleFieldNames": [ - "attributes", - "body", - "name", - "parameters", - "reference_modifier", - "return_type" - ], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "function_static_declaration": { - "type": "function_static_declaration", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "static_variable_declaration": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "global_declaration": { - "type": "global_declaration", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "dynamic_variable_name": "children", - "variable_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "goto_statement": { - "type": "goto_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "heredoc": { - "type": "heredoc", - "singleFieldNames": ["end_tag", "value"], - "nodeTypeToMultipleFieldName": { - "\"": "identifier", - "heredoc_start": "identifier" - }, - "multipleOrChildrenFieldNames": ["identifier"] - }, - "heredoc_body": { - "type": "heredoc_body", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children", - "escape_sequence": "children", - "string_value": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "if_statement": { - "type": "if_statement", - "singleFieldNames": ["body", "condition"], - "nodeTypeToMultipleFieldName": { - "else_clause": "alternative", - "else_if_clause": "alternative" - }, - "multipleOrChildrenFieldNames": ["alternative"] - }, - "include_expression": { - "type": "include_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "include_once_expression": { - "type": "include_once_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "interface_declaration": { - "type": "interface_declaration", - "singleFieldNames": ["body", "name"], - "nodeTypeToMultipleFieldName": { - "base_clause": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "intersection_type": { - "type": "intersection_type", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "named_type": "children", - "optional_type": "children", - "primitive_type": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "list_literal": { - "type": "list_literal", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children", - "by_ref": "children", - "list_literal": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "match_block": { - "type": "match_block", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "match_conditional_expression": "children", - "match_default_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "match_condition_list": { - "type": "match_condition_list", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "match_conditional_expression": { - "type": "match_conditional_expression", - "singleFieldNames": ["conditional_expressions", "return_expression"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "match_default_expression": { - "type": "match_default_expression", - "singleFieldNames": ["return_expression"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "match_expression": { - "type": "match_expression", - "singleFieldNames": ["body", "condition"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "member_access_expression": { - "type": "member_access_expression", - "singleFieldNames": ["name", "object"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "member_call_expression": { - "type": "member_call_expression", - "singleFieldNames": ["arguments", "name", "object"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "method_declaration": { - "type": "method_declaration", - "singleFieldNames": [ - "attributes", - "body", - "name", - "parameters", - "reference_modifier", - "return_type" - ], - "nodeTypeToMultipleFieldName": { - "abstract_modifier": "children", - "final_modifier": "children", - "readonly_modifier": "children", - "static_modifier": "children", - "var_modifier": "children", - "visibility_modifier": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "name": { - "type": "name", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "named_label_statement": { - "type": "named_label_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "named_type": { - "type": "named_type", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "name": "children", - "qualified_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "namespace_aliasing_clause": { - "type": "namespace_aliasing_clause", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "namespace_definition": { - "type": "namespace_definition", - "singleFieldNames": ["body", "name"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "namespace_name": { - "type": "namespace_name", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "namespace_name_as_prefix": { - "type": "namespace_name_as_prefix", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "namespace_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "namespace_use_clause": { - "type": "namespace_use_clause", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "name": "children", - "namespace_aliasing_clause": "children", - "qualified_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "namespace_use_declaration": { - "type": "namespace_use_declaration", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "namespace_name": "children", - "namespace_use_clause": "children", - "namespace_use_group": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "namespace_use_group": { - "type": "namespace_use_group", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "namespace_use_group_clause": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "namespace_use_group_clause": { - "type": "namespace_use_group_clause", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "namespace_aliasing_clause": "children", - "namespace_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "nowdoc": { - "type": "nowdoc", - "singleFieldNames": ["end_tag", "identifier", "value"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "nowdoc_body": { - "type": "nowdoc_body", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "nowdoc_string": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "nullsafe_member_access_expression": { - "type": "nullsafe_member_access_expression", - "singleFieldNames": ["name", "object"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "nullsafe_member_call_expression": { - "type": "nullsafe_member_call_expression", - "singleFieldNames": ["arguments", "name", "object"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "object_creation_expression": { - "type": "object_creation_expression", - "singleFieldNames": ["attributes"], - "nodeTypeToMultipleFieldName": { - "arguments": "children", - "base_clause": "children", - "class_interface_clause": "children", - "declaration_list": "children", - "dynamic_variable_name": "children", - "member_access_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "qualified_name": "children", - "scoped_property_access_expression": "children", - "subscript_expression": "children", - "variable_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "optional_type": { - "type": "optional_type", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "named_type": "children", - "primitive_type": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "pair": { - "type": "pair", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children", - "by_ref": "children", - "list_literal": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "parenthesized_expression": { - "type": "parenthesized_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "primitive_type": { - "type": "primitive_type", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "print_intrinsic": { - "type": "print_intrinsic", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "program": { - "type": "program", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "break_statement": "children", - "class_declaration": "children", - "compound_statement": "children", - "const_declaration": "children", - "continue_statement": "children", - "declare_statement": "children", - "do_statement": "children", - "echo_statement": "children", - "empty_statement": "children", - "enum_declaration": "children", - "expression_statement": "children", - "for_statement": "children", - "foreach_statement": "children", - "function_definition": "children", - "function_static_declaration": "children", - "global_declaration": "children", - "goto_statement": "children", - "if_statement": "children", - "interface_declaration": "children", - "named_label_statement": "children", - "namespace_definition": "children", - "namespace_use_declaration": "children", - "return_statement": "children", - "switch_statement": "children", - "trait_declaration": "children", - "try_statement": "children", - "unset_statement": "children", - "while_statement": "children", - "php_tag": "children", - "text": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "property_declaration": { - "type": "property_declaration", - "singleFieldNames": ["attributes", "type"], - "nodeTypeToMultipleFieldName": { - "abstract_modifier": "children", - "final_modifier": "children", - "property_element": "children", - "readonly_modifier": "children", - "static_modifier": "children", - "var_modifier": "children", - "visibility_modifier": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "property_element": { - "type": "property_element", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "property_initializer": "children", - "variable_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "property_initializer": { - "type": "property_initializer", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "property_promotion_parameter": { - "type": "property_promotion_parameter", - "singleFieldNames": [ - "default_value", - "name", - "readonly", - "type", - "visibility" - ], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "qualified_name": { - "type": "qualified_name", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "name": "children", - "namespace_name_as_prefix": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "readonly_modifier": { - "type": "readonly_modifier", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "reference_assignment_expression": { - "type": "reference_assignment_expression", - "singleFieldNames": ["left", "right"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "reference_modifier": { - "type": "reference_modifier", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "relative_scope": { - "type": "relative_scope", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "require_expression": { - "type": "require_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "require_once_expression": { - "type": "require_once_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "return_statement": { - "type": "return_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "scoped_call_expression": { - "type": "scoped_call_expression", - "singleFieldNames": ["arguments", "name", "scope"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "scoped_property_access_expression": { - "type": "scoped_property_access_expression", - "singleFieldNames": ["name", "scope"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "sequence_expression": { - "type": "sequence_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children", - "sequence_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "shell_command_expression": { - "type": "shell_command_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children", - "escape_sequence": "children", - "string_value": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "simple_parameter": { - "type": "simple_parameter", - "singleFieldNames": [ - "attributes", - "default_value", - "name", - "reference_modifier", - "type" - ], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "static_modifier": { - "type": "static_modifier", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "static_variable_declaration": { - "type": "static_variable_declaration", - "singleFieldNames": ["name", "value"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "subscript_expression": { - "type": "subscript_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "switch_block": { - "type": "switch_block", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "case_statement": "children", - "default_statement": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "switch_statement": { - "type": "switch_statement", - "singleFieldNames": ["body", "condition"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "text": { - "type": "text", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "text_interpolation": { - "type": "text_interpolation", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "php_tag": "children", - "text": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "throw_expression": { - "type": "throw_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "trait_declaration": { - "type": "trait_declaration", - "singleFieldNames": ["body", "name"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "try_statement": { - "type": "try_statement", - "singleFieldNames": ["body"], - "nodeTypeToMultipleFieldName": { - "catch_clause": "children", - "finally_clause": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "type_list": { - "type": "type_list", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "named_type": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "unary_op_expression": { - "type": "unary_op_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "union_type": { - "type": "union_type", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "named_type": "children", - "optional_type": "children", - "primitive_type": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "unset_statement": { - "type": "unset_statement", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "cast_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "subscript_expression": "children", - "variable_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "update_expression": { - "type": "update_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "cast_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "subscript_expression": "children", - "variable_name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "use_as_clause": { - "type": "use_as_clause", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "class_constant_access_expression": "children", - "name": "children", - "visibility_modifier": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "use_declaration": { - "type": "use_declaration", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "name": "children", - "qualified_name": "children", - "use_list": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "use_instead_of_clause": { - "type": "use_instead_of_clause", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "class_constant_access_expression": "children", - "name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "use_list": { - "type": "use_list", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "use_as_clause": "children", - "use_instead_of_clause": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "variable_name": { - "type": "variable_name", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "name": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "variadic_parameter": { - "type": "variadic_parameter", - "singleFieldNames": ["attributes", "name", "reference_modifier", "type"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "variadic_placeholder": { - "type": "variadic_placeholder", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "variadic_unpacking": { - "type": "variadic_unpacking", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "visibility_modifier": { - "type": "visibility_modifier", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "while_statement": { - "type": "while_statement", - "singleFieldNames": ["body", "condition"], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "yield_expression": { - "type": "yield_expression", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": { - "boolean": "children", - "encapsed_string": "children", - "float": "children", - "heredoc": "children", - "integer": "children", - "nowdoc": "children", - "null": "children", - "string": "children", - "anonymous_function_creation_expression": "children", - "array_creation_expression": "children", - "arrow_function": "children", - "cast_expression": "children", - "class_constant_access_expression": "children", - "dynamic_variable_name": "children", - "function_call_expression": "children", - "member_access_expression": "children", - "member_call_expression": "children", - "name": "children", - "nullsafe_member_access_expression": "children", - "nullsafe_member_call_expression": "children", - "object_creation_expression": "children", - "parenthesized_expression": "children", - "print_intrinsic": "children", - "qualified_name": "children", - "scoped_call_expression": "children", - "scoped_property_access_expression": "children", - "shell_command_expression": "children", - "subscript_expression": "children", - "throw_expression": "children", - "update_expression": "children", - "variable_name": "children", - "assignment_expression": "children", - "augmented_assignment_expression": "children", - "binary_expression": "children", - "clone_expression": "children", - "conditional_expression": "children", - "exponentiation_expression": "children", - "include_expression": "children", - "include_once_expression": "children", - "match_expression": "children", - "reference_assignment_expression": "children", - "require_expression": "children", - "require_once_expression": "children", - "unary_op_expression": "children", - "yield_expression": "children", - "array_element_initializer": "children" - }, - "multipleOrChildrenFieldNames": ["children"] - }, - "!=": { - "type": "!=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "!==": { - "type": "!==", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "\"": { - "type": "\"", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "%": { - "type": "%", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "%=": { - "type": "%=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "&": { - "type": "&", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "&&": { - "type": "&&", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "&=": { - "type": "&=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "*": { - "type": "*", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "**=": { - "type": "**=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "*=": { - "type": "*=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "+": { - "type": "+", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "+=": { - "type": "+=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "-": { - "type": "-", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "-=": { - "type": "-=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - ".": { - "type": ".", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - ".=": { - "type": ".=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "/": { - "type": "/", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "/=": { - "type": "/=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "<": { - "type": "<", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "<<": { - "type": "<<", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "<<=": { - "type": "<<=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "<=": { - "type": "<=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "<=>": { - "type": "<=>", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "<>": { - "type": "<>", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "==": { - "type": "==", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "===": { - "type": "===", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - ">": { - "type": ">", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - ">=": { - "type": ">=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - ">>": { - "type": ">>", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - ">>=": { - "type": ">>=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "??": { - "type": "??", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "??=": { - "type": "??=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "^": { - "type": "^", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "^=": { - "type": "^=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "and": { - "type": "and", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "boolean": { - "type": "boolean", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "bottom_type": { - "type": "bottom_type", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "comment": { - "type": "comment", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "escape_sequence": { - "type": "escape_sequence", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "heredoc_end": { - "type": "heredoc_end", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "heredoc_start": { - "type": "heredoc_start", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "instanceof": { - "type": "instanceof", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "integer": { - "type": "integer", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "nowdoc_string": { - "type": "nowdoc_string", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "or": { - "type": "or", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "php_tag": { - "type": "php_tag", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "string_value": { - "type": "string_value", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "var_modifier": { - "type": "var_modifier", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "xor": { - "type": "xor", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "|": { - "type": "|", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "|=": { - "type": "|=", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - }, - "||": { - "type": "||", - "singleFieldNames": [], - "nodeTypeToMultipleFieldName": {}, - "multipleOrChildrenFieldNames": [] - } -} diff --git a/packages/tree-sitter-port/output/tree-sitter-php/meta.json b/packages/tree-sitter-port/output/tree-sitter-php/meta.json index 3470dad..53dd175 100644 --- a/packages/tree-sitter-port/output/tree-sitter-php/meta.json +++ b/packages/tree-sitter-port/output/tree-sitter-php/meta.json @@ -1,5 +1,5 @@ { "name": "tree-sitter-php", - "version": "0.19.0", - "generatedAt": "2023-08-13T18:16:29.152Z" + "version": "0.22.5", + "generatedAt": "2024-06-26T15:42:10.851Z" } diff --git a/packages/tree-sitter-port/output/tree-sitter-php/parser.wasm b/packages/tree-sitter-port/output/tree-sitter-php/parser.wasm deleted file mode 100755 index bbfba40..0000000 Binary files a/packages/tree-sitter-port/output/tree-sitter-php/parser.wasm and /dev/null differ diff --git a/packages/tree-sitter-port/output/tree-sitter-python/fields-meta.json b/packages/tree-sitter-port/output/tree-sitter-python/fields-meta.json index 7c15652..db41dd9 100644 --- a/packages/tree-sitter-port/output/tree-sitter-python/fields-meta.json +++ b/packages/tree-sitter-port/output/tree-sitter-python/fields-meta.json @@ -50,6 +50,7 @@ "type": "as_pattern", "singleFieldNames": ["alias"], "nodeTypeToMultipleFieldName": { + "case_pattern": "children", "as_pattern": "children", "boolean_operator": "children", "comparison_operator": "children", @@ -176,7 +177,8 @@ "pass_statement": "children", "print_statement": "children", "raise_statement": "children", - "return_statement": "children" + "return_statement": "children", + "type_alias_statement": "children" }, "multipleOrChildrenFieldNames": ["alternative", "children"] }, @@ -202,9 +204,33 @@ "type": "case_clause", "singleFieldNames": ["consequence", "guard"], "nodeTypeToMultipleFieldName": { - "case_pattern": "pattern" + "case_pattern": "children" }, - "multipleOrChildrenFieldNames": ["pattern"] + "multipleOrChildrenFieldNames": ["children"] + }, + "case_pattern": { + "type": "case_pattern", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "as_pattern": "children", + "class_pattern": "children", + "complex_pattern": "children", + "concatenated_string": "children", + "dict_pattern": "children", + "dotted_name": "children", + "false": "children", + "float": "children", + "integer": "children", + "keyword_pattern": "children", + "list_pattern": "children", + "none": "children", + "splat_pattern": "children", + "string": "children", + "true": "children", + "tuple_pattern": "children", + "union_pattern": "children" + }, + "multipleOrChildrenFieldNames": ["children"] }, "chevron": { "type": "chevron", @@ -247,10 +273,19 @@ }, "class_definition": { "type": "class_definition", - "singleFieldNames": ["body", "name", "superclasses"], + "singleFieldNames": ["body", "name", "superclasses", "type_parameters"], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "class_pattern": { + "type": "class_pattern", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "case_pattern": "children", + "dotted_name": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, "comparison_operator": { "type": "comparison_operator", "singleFieldNames": [], @@ -294,6 +329,15 @@ }, "multipleOrChildrenFieldNames": ["operators", "children"] }, + "complex_pattern": { + "type": "complex_pattern", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "float": "children", + "integer": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, "concatenated_string": { "type": "concatenated_string", "singleFieldNames": [], @@ -341,6 +385,14 @@ }, "multipleOrChildrenFieldNames": ["children"] }, + "constrained_type": { + "type": "constrained_type", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "type": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, "continue_statement": { "type": "continue_statement", "singleFieldNames": [], @@ -440,6 +492,31 @@ }, "multipleOrChildrenFieldNames": ["children"] }, + "dict_pattern": { + "type": "dict_pattern", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "case_pattern": "value", + "splat_pattern": "children", + "-": "children", + "_": "children", + "class_pattern": "children", + "complex_pattern": "children", + "concatenated_string": "children", + "dict_pattern": "children", + "dotted_name": "children", + "false": "children", + "float": "children", + "integer": "children", + "list_pattern": "children", + "none": "children", + "string": "children", + "true": "children", + "tuple_pattern": "children", + "union_pattern": "children" + }, + "multipleOrChildrenFieldNames": ["value", "children"] + }, "dictionary": { "type": "dictionary", "singleFieldNames": [], @@ -797,7 +874,13 @@ }, "function_definition": { "type": "function_definition", - "singleFieldNames": ["body", "name", "parameters", "return_type"], + "singleFieldNames": [ + "body", + "name", + "parameters", + "return_type", + "type_parameters" + ], "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, @@ -819,6 +902,15 @@ }, "multipleOrChildrenFieldNames": ["children"] }, + "generic_type": { + "type": "generic_type", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "identifier": "children", + "type_parameter": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, "global_statement": { "type": "global_statement", "singleFieldNames": [], @@ -912,6 +1004,29 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "keyword_pattern": { + "type": "keyword_pattern", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "class_pattern": "children", + "complex_pattern": "children", + "concatenated_string": "children", + "dict_pattern": "children", + "dotted_name": "children", + "false": "children", + "float": "children", + "identifier": "children", + "integer": "children", + "list_pattern": "children", + "none": "children", + "splat_pattern": "children", + "string": "children", + "true": "children", + "tuple_pattern": "children", + "union_pattern": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, "keyword_separator": { "type": "keyword_separator", "singleFieldNames": [], @@ -988,6 +1103,7 @@ "type": "list_pattern", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "case_pattern": "children", "attribute": "children", "identifier": "children", "list_pattern": "children", @@ -1085,6 +1201,15 @@ }, "multipleOrChildrenFieldNames": ["subject"] }, + "member_type": { + "type": "member_type", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "identifier": "children", + "type": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, "module": { "type": "module", "singleFieldNames": [], @@ -1112,7 +1237,8 @@ "pass_statement": "children", "print_statement": "children", "raise_statement": "children", - "return_statement": "children" + "return_statement": "children", + "type_alias_statement": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -1450,6 +1576,22 @@ }, "multipleOrChildrenFieldNames": ["children"] }, + "splat_pattern": { + "type": "splat_pattern", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "identifier": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "splat_type": { + "type": "splat_type", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "identifier": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, "string": { "type": "string", "singleFieldNames": [], @@ -1465,6 +1607,7 @@ "type": "string_content", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "escape_interpolation": "children", "escape_sequence": "children" }, "multipleOrChildrenFieldNames": ["children"] @@ -1565,6 +1708,7 @@ "type": "tuple_pattern", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { + "case_pattern": "children", "attribute": "children", "identifier": "children", "list_pattern": "children", @@ -1574,42 +1718,19 @@ }, "multipleOrChildrenFieldNames": ["children"] }, - "type": { - "type": "type", + "type_alias_statement": { + "type": "type_alias_statement", "singleFieldNames": [], "nodeTypeToMultipleFieldName": { - "as_pattern": "children", - "boolean_operator": "children", - "comparison_operator": "children", - "conditional_expression": "children", - "lambda": "children", - "named_expression": "children", - "not_operator": "children", - "attribute": "children", - "await": "children", - "binary_operator": "children", - "call": "children", - "concatenated_string": "children", - "dictionary": "children", - "dictionary_comprehension": "children", - "ellipsis": "children", - "false": "children", - "float": "children", - "generator_expression": "children", - "identifier": "children", - "integer": "children", - "list": "children", - "list_comprehension": "children", - "list_splat": "children", - "none": "children", - "parenthesized_expression": "children", - "set": "children", - "set_comprehension": "children", - "string": "children", - "subscript": "children", - "true": "children", - "tuple": "children", - "unary_operator": "children" + "type": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "type_parameter": { + "type": "type_parameter", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "type": "children" }, "multipleOrChildrenFieldNames": ["children"] }, @@ -1635,6 +1756,36 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "union_pattern": { + "type": "union_pattern", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "class_pattern": "children", + "complex_pattern": "children", + "concatenated_string": "children", + "dict_pattern": "children", + "dotted_name": "children", + "false": "children", + "float": "children", + "integer": "children", + "list_pattern": "children", + "none": "children", + "splat_pattern": "children", + "string": "children", + "true": "children", + "tuple_pattern": "children", + "union_pattern": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, + "union_type": { + "type": "union_type", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": { + "type": "children" + }, + "multipleOrChildrenFieldNames": ["children"] + }, "while_statement": { "type": "while_statement", "singleFieldNames": ["alternative", "body", "condition"], @@ -1855,6 +2006,12 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "_": { + "type": "_", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "and": { "type": "and", "singleFieldNames": [], @@ -1867,6 +2024,12 @@ "nodeTypeToMultipleFieldName": {}, "multipleOrChildrenFieldNames": [] }, + "escape_interpolation": { + "type": "escape_interpolation", + "singleFieldNames": [], + "nodeTypeToMultipleFieldName": {}, + "multipleOrChildrenFieldNames": [] + }, "escape_sequence": { "type": "escape_sequence", "singleFieldNames": [], diff --git a/packages/tree-sitter-port/output/tree-sitter-python/meta.json b/packages/tree-sitter-port/output/tree-sitter-python/meta.json index 3a94bda..82f0b62 100644 --- a/packages/tree-sitter-port/output/tree-sitter-python/meta.json +++ b/packages/tree-sitter-port/output/tree-sitter-python/meta.json @@ -1,5 +1,5 @@ { "name": "tree-sitter-python", - "version": "0.20.3", - "generatedAt": "2023-08-13T18:16:21.498Z" + "version": "0.21.0", + "generatedAt": "2024-06-26T15:41:11.470Z" } diff --git a/packages/tree-sitter-port/output/tree-sitter-python/parser.wasm b/packages/tree-sitter-port/output/tree-sitter-python/parser.wasm index a7ac75e..132a88c 100755 Binary files a/packages/tree-sitter-port/output/tree-sitter-python/parser.wasm and b/packages/tree-sitter-port/output/tree-sitter-python/parser.wasm differ diff --git a/packages/tree-sitter-port/package.json b/packages/tree-sitter-port/package.json index a1712c9..237c5e7 100644 --- a/packages/tree-sitter-port/package.json +++ b/packages/tree-sitter-port/package.json @@ -26,7 +26,7 @@ "eslint": "^8.18.0", "tree-sitter-cli": "^0.20.8", "ts-node": "^10.9.1", - "typescript": "^4.7.4" + "typescript": "5.9.3" }, "dependencies": {} } diff --git a/packages/tree-sitter-port/src/copyFiles.ts b/packages/tree-sitter-port/src/copyFiles.ts index e7375ca..939ad1f 100644 --- a/packages/tree-sitter-port/src/copyFiles.ts +++ b/packages/tree-sitter-port/src/copyFiles.ts @@ -4,7 +4,7 @@ import path from 'path' import { logger as log } from './log' import { ParserType } from '@codeque/core' -const parsersToCopy: Array = ['python', 'lua'] +const parsersToCopy: Array = ['python', 'lua', 'csharp'] const filteredParserSettings = parsersSettings.filter(({ parserType }) => parsersToCopy.includes(parserType), diff --git a/packages/tree-sitter-port/src/settings.ts b/packages/tree-sitter-port/src/settings.ts index c9f4606..a500e30 100644 --- a/packages/tree-sitter-port/src/settings.ts +++ b/packages/tree-sitter-port/src/settings.ts @@ -26,6 +26,13 @@ export const parsersSettings: ParserSettings[] = [ nodeTypesLocation: 'src/node-types.json', buildWasmCommand: getWasmBuildCommand('tree-sitter-python'), nodeTypesToIgnore: [',', 'comment'], + conflictResolvers: [ + { + nodeType: 'dict_pattern', + fields: ['key', 'children'], + mergeToField: 'children', + }, + ], }, { parserType: 'babel', // temporary for test @@ -36,7 +43,7 @@ export const parsersSettings: ParserSettings[] = [ nodeTypesToIgnore: [], }, { - parserType: 'babel', // temporary for test + parserType: 'csharp', parserName: 'tree-sitter-c-sharp', repoUrl: 'https://github.com/tree-sitter/tree-sitter-c-sharp.git', nodeTypesLocation: 'src/node-types.json', diff --git a/packages/vscode/InternalReadme.md b/packages/vscode/InternalReadme.md index af090a9..7a06c88 100644 --- a/packages/vscode/InternalReadme.md +++ b/packages/vscode/InternalReadme.md @@ -1,5 +1,7 @@ ## Development +Make sure to build core package first `yarn workspace @codeque/core build` + Run `yarn watch:extension` and `yarn watch:webviews` Open Vscode and run `Run extension` configuration in debugger @@ -8,13 +10,28 @@ While in VSCode with extension host run `> Reload Extension` to refresh webview To refresh extension backed re-run debugger configuration. +## Testing production build locally +Make sure to build core package first `yarn workspace @codeque/core build` + +Then change version in package.json to include `-local` suffix, eg. `0.35.1-local`. + +Otherwise vscode will confuse locally installed version and you won't be able to download published version with the same version code, unless you uninstall local version manually + +Package the extension into vsix file `cd packages/vscode && vsce package` + +Command runs checks, run webpack build and package extension into `vsix` (kind of archive file) + +You will get file `codeque-.vsix` + +The install extension from command pallette in vscode `cmd+p` -> `install from VSIX` -> select generated file -> Hit "Restart Extensions" button + ## Publish to official Visual Studio Code Marketplace Bump version manually in package.json And just run -`vsce publish` +`vsce publish -p ` `vsce` will automatically run pre-publish hooks from script `vscode:prepublish` to run checks and build package @@ -24,4 +41,4 @@ You might be asked to [get new PAT](https://code.visualstudio.com/api/working-wi Same procedure as above, but run -`ovsx publish` +`ovsx publish -p ` diff --git a/packages/vscode/README.md b/packages/vscode/README.md index 054a842..8ad76ac 100644 --- a/packages/vscode/README.md +++ b/packages/vscode/README.md @@ -22,26 +22,26 @@

Find and lint complex code patterns effortlessly

-___ +--- # What is CodeQue? -CodeQue is semantic code search engine that understands the code syntax. +CodeQue is semantic code search engine that understands the code syntax. It matches code structurally which makes it excellent for more complex queries. -Query language offers wildcards, partial matching and ignores code formatting. +Query language offers wildcards, partial matching and ignores code formatting. -Structural code search is available for JavaScript, TypesScript, HTML, CSS, Python, Lua and more soon. +Structural code search is available for JavaScript, TypesScript, HTML, CSS, Python, Lua, C# and more soon. -Text code search with handy wildcards is available for __every language__ and covers common regex search use cases. +Text code search with handy wildcards is available for **every language** and covers common regex search use cases.

Give it a try in playground

Just paste code snippet to start searching, no installation needed!

-__Integrations__ +**Integrations** CodeQue is available as: @@ -51,18 +51,16 @@ CodeQue is available as:

All CodeQue tools work offline hence code never leaves your local environment.

-__Coming soon__ +**Coming soon** CodeQue will be soon available as: - Duplicated code identification -- Batch code refactoring -- Advanced ESLint rule creator - +- Batch code refactoring +- Advanced ESLint rule creator

🔔 Get notified about updates 🔔

-
@@ -93,10 +91,12 @@ Advanced code search options and todo-like list of accurate search results will -## About +## About + One of the main strengths of CodeQue is its easy-to-use query language, but it also offers several additional features that make it a great support tool for your daily work. **Features** + - [Query language](#query-language) - [Search modes](#search-modes) - [Searching by file imports](#searching-by-file-imports) @@ -107,6 +107,7 @@ One of the main strengths of CodeQue is its easy-to-use query language, but it a - [Search errors](#search-errors) **Example Queries** + - [All usages of `console` object](#all-usages-of-console-object) - [Object with given key and value](#object-with-given-key-and-value) - [React component with specific props combination](#react-component-with-specific-props-combination) @@ -120,7 +121,7 @@ One of the main strengths of CodeQue is its easy-to-use query language, but it a ### Query language The beauty of CodeQue query language is that the query has to be valid source code. -You don't have to learn anything new! +You don't have to learn anything new! Except the fact there are a few types of wildcards. @@ -130,7 +131,7 @@ It matches all identifiers, JSX identifiers, types identifiers, function names a `$$$` is an statement/expression wildcard. -It matches any statement or expression. Think of it as 'match anything'. +It matches any statement or expression. Think of it as 'match anything'. There a few quirks there. It's good to have general understanding of how code is represented in AST (Abstract Syntax Tree) for more complex queries. More technically `$$$` wildcard is matching any node with all it's children. @@ -145,7 +146,7 @@ Strings have their's own wildcards #### Number wildcard -`0x0`- matches any number +`0x0`- matches any number Here is an example of query which finds all types of logs which includes word `test` in parameter 👇 @@ -156,6 +157,7 @@ Here is an example of query which finds all types of logs which includes word `t ### Search modes CodeQue offers the following search modes + - include - text - exact @@ -163,13 +165,13 @@ CodeQue offers the following search modes
-The most useful mode is `include`. As the name suggest the matched code has to include the code from query, but it can also contain other statements. It performs structural comparison. +The most useful mode is `include`. As the name suggest the matched code has to include the code from query, but it can also contain other statements. It performs structural comparison. [Learn more about `include` search mode](https://codeque.co/docs#include-search-mode)
-`text` search mode is good replacement of build-in vscode search. It acts like a normal text search, but it's big advantage is that it allows for matching multiline statements. It also offers it's own types of wildcards. +`text` search mode is good replacement of build-in vscode search. It acts like a normal text search, but it's big advantage is that it allows for matching multiline statements. It also offers it's own types of wildcards. [Learn more about `text` search mode](https://codeque.co/docs#include-search-mode) @@ -181,13 +183,13 @@ Sometimes you might want to find the code that matches exactly your query. Here
-Last but not least, `include-with-order` search mode can be useful in some rare cases. Same like `include` mode it matches code structurally and allows for missing parts, but in addition, it require the order to match. +Last but not least, `include-with-order` search mode can be useful in some rare cases. Same like `include` mode it matches code structurally and allows for missing parts, but in addition, it require the order to match. [Learn more about `include-with-order` search mode](https://codeque.co/docs#include-w-ith-order-search-mode)
-Here is the example of `include` mode matching function body containing statements from query 👇 +Here is the example of `include` mode matching function body containing statements from query 👇 @@ -228,6 +230,7 @@ You can define glob patters to either include or exclude files from the list. By default CodeQue is not searching in files ignored by `.gitignore` Enable the following flags with caution, as they might significantly downgrade search performance for lager projects. + - Search ignored files - Search `node_modules` (for most projects to search node_modules you have to also enable searching by ignored files) - Search files above 100kb (these are usually bundled files which are structurally heavy due to their size and amount of information) @@ -240,7 +243,7 @@ Example files list settings 👇 ### Case sensitivity -You can choose whether to compare identifier persisting their original case or do case insensitive match. +You can choose whether to compare identifier persisting their original case or do case insensitive match. ### Search errors @@ -252,7 +255,7 @@ You can check search error details in tooltip available after click the error co ## Query examples -CodeQue is general purpose code search tool. The examples list could be endless. Here are some of them for you to get a glimpse of what's possible. Those are relatively simple, you will definitely find some more complex during day to day work. +CodeQue is general purpose code search tool. The examples list could be endless. Here are some of them for you to get a glimpse of what's possible. Those are relatively simple, you will definitely find some more complex during day to day work. > Don't know how to write a query? [Open an issue on GitHub](https://github.com/codeque-co/codeque/issues) ! @@ -270,17 +273,18 @@ console.$$() CodeQue ability to match parts of the objects might be very useful, especially for searching patterns in large JSONs. -This query will match part of an object literal in file or JSON (depending on file extension) regardless of how deeply nested the object is in the structure. +This query will match part of an object literal in file or JSON (depending on file extension) regardless of how deeply nested the object is in the structure. More specifically it will match all objects with at least one address entry with country specified to `PL` and phone number which is non empty string. - ```ts -({ - addresses: [{ - country: 'PL' - }], - phoneNumber: "$$$" +;({ + addresses: [ + { + country: 'PL', + }, + ], + phoneNumber: '$$$', }) ``` @@ -291,11 +295,7 @@ More specifically it will match all objects with at least one address entry with I found it very useful to find props with specific props combination. Sometimes props depends on each other and we might want to refactor some of them, but how do we determine whether they are used together? We can review long list of results for basic code search, but who has time for that 😉 ```tsx - diff --git a/packages/vscode/src/webviews/Sidebar/components/SearchSettings.tsx b/packages/vscode/src/webviews/Sidebar/components/SearchSettings.tsx index d51f2a7..82858ac 100644 --- a/packages/vscode/src/webviews/Sidebar/components/SearchSettings.tsx +++ b/packages/vscode/src/webviews/Sidebar/components/SearchSettings.tsx @@ -294,6 +294,7 @@ export function SearchSettings({ : {} return ( + //@ts-ignore {!resultsPanelVisible && ( Lua + + C# + diff --git a/packages/vscode/src/webviews/components/ButtonWithOptionSelect.tsx b/packages/vscode/src/webviews/components/ButtonWithOptionSelect.tsx index 251b557..126ce97 100644 --- a/packages/vscode/src/webviews/components/ButtonWithOptionSelect.tsx +++ b/packages/vscode/src/webviews/components/ButtonWithOptionSelect.tsx @@ -40,6 +40,7 @@ export function ButtonWithOptionSelect({ ) return ( + // @ts-ignore