summaryrefslogtreecommitdiff
path: root/dev-python/grep-ast/files
diff options
context:
space:
mode:
authorCrucible <crucible@localhost>2026-09-30 03:05:07 -0500
committerCrucible <crucible@localhost>2026-09-30 03:05:07 -0500
commit9c4e6e8fed8999df35813182c3b9577d541394e0 (patch)
tree2466b7bb1ca606d88c3191c59d1b1c0a3b87e398 /dev-python/grep-ast/files
parentc5a9b07f13fb47e9869f0433ea92068acfe47038 (diff)
downloadsrcux-9c4e6e8fed8999df35813182c3b9577d541394e0.tar.gz
srcux-9c4e6e8fed8999df35813182c3b9577d541394e0.tar.xz
srcux-9c4e6e8fed8999df35813182c3b9577d541394e0.zip
Publish srcux candidate 0000000524-20260930-030309
Diffstat (limited to 'dev-python/grep-ast/files')
-rw-r--r--dev-python/grep-ast/files/grep-ast-20250508-treesitter.patch14
-rw-r--r--dev-python/grep-ast/files/tsl.py40
2 files changed, 54 insertions, 0 deletions
diff --git a/dev-python/grep-ast/files/grep-ast-20250508-treesitter.patch b/dev-python/grep-ast/files/grep-ast-20250508-treesitter.patch
new file mode 100644
index 000000000000..3565832f5b92
--- /dev/null
+++ b/dev-python/grep-ast/files/grep-ast-20250508-treesitter.patch
@@ -0,0 +1,14 @@
+--- a/tests/test_parsers.py 2026-09-24 14:10:15.753263357 +0200
++++ b/tests/test_parsers.py 2026-09-24 14:11:05.104668455 +0200
+@@ -1,9 +1,8 @@
+-from tree_sitter_languages import get_parser
+-
+ from grep_ast.dump import dump # noqa: F401
+ from grep_ast.parsers import PARSERS
++from grep_ast.tsl import get_parser, LANGUAGE_MAPPING
+
+
+ def test_get_parser_for_all_parsers():
+- for lang in PARSERS.values():
++ for lang in LANGUAGE_MAPPING.keys():
+ assert get_parser(lang) is not None
diff --git a/dev-python/grep-ast/files/tsl.py b/dev-python/grep-ast/files/tsl.py
new file mode 100644
index 000000000000..21638a0640ce
--- /dev/null
+++ b/dev-python/grep-ast/files/tsl.py
@@ -0,0 +1,40 @@
+from tree_sitter import Language, Parser
+import tree_sitter_bash
+import tree_sitter_c
+import tree_sitter_cmake
+import tree_sitter_cpp
+import tree_sitter_css
+import tree_sitter_html
+import tree_sitter_javascript
+import tree_sitter_markdown
+import tree_sitter_python
+import tree_sitter_xml
+
+USING_TSL_PACK = True
+
+LANGUAGE_MAPPING = {
+ "bash": tree_sitter_bash.language(),
+ "c": tree_sitter_c.language(),
+ "cmake": tree_sitter_cmake.language(),
+ "cpp": tree_sitter_cpp.language(),
+ "css": tree_sitter_css.language(),
+ "dtd": tree_sitter_xml.language_dtd(),
+ "html": tree_sitter_html.language(),
+ "javascript": tree_sitter_javascript.language(),
+ "markdown": tree_sitter_markdown.language(),
+ "markdown_inline": tree_sitter_markdown.inline_language(),
+ "python": tree_sitter_python.language(),
+ "xml": tree_sitter_xml.language_xml(),
+}
+
+def get_language(lang: str):
+ if lang in LANGUAGE_MAPPING:
+ return Language(LANGUAGE_MAPPING[lang])
+ raise ValueError(f"Unsupported language: {lang}")
+
+def get_parser(lang: str):
+ lang_obj = get_language(lang)
+ parser = Parser(lang_obj)
+ return parser
+
+__all__ = [get_parser, get_language, USING_TSL_PACK]