tree-sitter-gosu
A Tree-sitter grammar that parses Gosu, a statically typed, JVM-based general-purpose programming language.
Requirements
- Python
>=3.14 - Poetry
2.2 - Node.js (for
tree-sitter-cli, used to regenerate the parser fromgrammar.js) - A C compiler (MSVC on Windows, GCC/Clang on Linux/macOS) to build the native extension and run
tree-sitter test/tree-sitter parse
Installation
poetry install
Usage
import tree_sitter
import tree_sitter_gosu
language = tree_sitter.Language(tree_sitter_gosu.language())
parser = tree_sitter.Parser(language)
tree = parser.parse(b"class Foo { function bar(): int { return 1 } }")
Development
Install dependencies
poetry install
Run tests with coverage
poetry run pytest --cov=tree_sitter_gosu tests --cov-report html
Format and lint
poetry run black tree_sitter_gosu; poetry run pylint tree_sitter_gosu
Regenerate the parser from grammar.js
npm install
npx tree-sitter generate
npx tree-sitter test
Configuration
Set the TREE_SITTER_GOSU_CONFIG_DIR environment variable to override the default configuration directory.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Release files for tree-sitter-gosu 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tree_sitter_gosu-0.1.1.tar.gz | 138.6 kB | Details |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tree_sitter_gosu-0.1.1-cp314-cp314-win_amd64.whl | CPython 3.14 | CPython 3.14 | Windows x86-64 | Details |
| tree_sitter_gosu-0.1.1-cp314-cp314-manylinux_2_39_x86_64.whl | CPython 3.14 | CPython 3.14 | Linux glibc 2.39+ x86-64 | Details |
| tree_sitter_gosu-0.1.1-cp314-cp314-macosx_26_0_arm64.whl | CPython 3.14 | CPython 3.14 | macOS 26.0+ ARM64 | Details |
Total release size: 341.2 kB
Release files / tree_sitter_gosu-0.1.1.tar.gz
| Download URL | tree_sitter_gosu-0.1.1.tar.gz |
|---|---|
| Size | 138.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cb7e9f85e2ed92c2ba629a17d1b701dc066dbe128471ff43aaf418e5e7574437
|
|
BLAKE2b-256 checksum How to use checksums |
b0984a72e9f02c66c0f3adfa17e23f9508cefe2f4b965ddb5a7d0c908714be6f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / tree_sitter_gosu-0.1.1-cp314-cp314-win_amd64.whl
| Download URL | tree_sitter_gosu-0.1.1-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 48.1 kB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
5be8f4e5139b83b1494ef758b7a68f5cd6c1ec0ee2557f12af10b45a256524cf
|
|
BLAKE2b-256 checksum How to use checksums |
13c5ca00aad03a3757dbcc12582c56b27e99cbbc443addfeceb45ab128d845d3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / tree_sitter_gosu-0.1.1-cp314-cp314-manylinux_2_39_x86_64.whl
| Download URL | tree_sitter_gosu-0.1.1-cp314-cp314-manylinux_2_39_x86_64.whl |
|---|---|
| Size | 67.6 kB |
| Tags | CPython 3.14 Linux glibc 2.39+ x86-64 |
|
SHA-256 checksum How to use checksums |
81edadd0fbee7c87006a17319d1a55542b43cdf6e04314673c735e26842d80ea
|
|
BLAKE2b-256 checksum How to use checksums |
4f1031c47d642c34071b5e378b4875c65bde28d0d2dd3b496e727d9267030b15
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / tree_sitter_gosu-0.1.1-cp314-cp314-macosx_26_0_arm64.whl
| Download URL | tree_sitter_gosu-0.1.1-cp314-cp314-macosx_26_0_arm64.whl |
|---|---|
| Size | 86.9 kB |
| Tags | CPython 3.14 macOS 26.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
b05379fb6ec41d2e2c9f7ce6c3f70978dbf387da32cc724e2b746d9ba8b65a9d
|
|
BLAKE2b-256 checksum How to use checksums |
c5473bd64e3bf8dea42b3798c6e3981c3f665d407106484a98eb1460a5db12bb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|