a structural diff that understands syntax 🟥🟩
 
 
 
 
 
Go to file
Eugene Yokota b5fd12eaab Fixes extends clause
Problem
-------
1. In Scala 3, extends clause can be comma separated.
2. In Scala 2 or 3 extends clause can ctor with parameters:
   `class D with E(x) with F(y)`.

Solution
--------
`extends` is now followed by *constructor applications* separated by
either `with` or `,` as opposed to treating them as a compound type.
2023-01-13 14:40:20 +07:00
.github/workflows Smoke tests back on Linux only 2023-01-09 08:05:46 +07:00
bindings Bump tree sitter to 0.20.7 and expose highlights query in rust binding 2023-01-08 00:23:14 +07:00
corpus Fixes extends clause 2023-01-13 14:40:20 +07:00
examples Improve grammar for package declarations 2018-02-24 17:19:26 +07:00
queries Merge pull request #128 from eed3si9n/wip/fewer_braces 2023-01-12 14:36:28 +07:00
script Fixes extends clause 2023-01-13 14:40:20 +07:00
src chore: generate latest changes 2023-01-12 12:52:04 +07:00
test Merge pull request #128 from eed3si9n/wip/fewer_braces 2023-01-12 14:36:28 +07:00
.envrc Setup nix with direnv (#129) 2023-01-12 19:11:45 +07:00
.gitattributes Initial commit 2018-02-22 10:58:11 +07:00
.gitignore Setup nix with direnv (#129) 2023-01-12 19:11:45 +07:00
.npmignore Bump tree-sitter-cli to 0.19 2021-03-04 15:02:10 +07:00
Cargo.toml Bump tree sitter to 0.20.7 and expose highlights query in rust binding 2023-01-08 00:23:14 +07:00
LICENSE Add MIT license 2019-08-07 11:11:36 +07:00
README.md Setup nix with direnv (#129) 2023-01-12 19:11:45 +07:00
binding.gyp Bump tree-sitter-cli to 0.19 2021-03-04 15:02:10 +07:00
default.nix Setup nix with direnv (#129) 2023-01-12 19:11:45 +07:00
grammar.js Fixes extends clause 2023-01-13 14:40:20 +07:00
package.json Bump tree sitter to 0.20.7 and expose highlights query in rust binding 2023-01-08 00:23:14 +07:00

README.md

tree-sitter-scala

Test the grammar

Scala grammar for tree-sitter.

References

Development

Requirements:

  • Node.js version 6.0 or greater
  • C Compiler

Refer to the tree-sitter documentation for more details. If you use nix you can enter a nix-shell (nix-shell .) which will install them for you.

Then, install the project's dependencies:

npm install

Add a test case to ./corpus, make the required changes to grammar.js, regenerate and recompile the parser, and run the tests:

npm run build
npm test