summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilfred Hughes <me@wilfred.me.uk>2023-07-12 17:34:04 -0700
committerWilfred Hughes <me@wilfred.me.uk>2023-07-12 17:34:42 -0700
commita5d3cb55b7ef53201feb2e006208378a92a60e8e (patch)
treeb679cf97e93761faf67fd6b38b5f403d1808b237
parent2d2a1484fdb731fa7853423a74f930dd6be3e73f (diff)
Treat constructors consistently with variables in Haskell atoms
-rw-r--r--CHANGELOG.md4
-rw-r--r--src/parse/tree_sitter_parser.rs10
2 files changed, 11 insertions, 3 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 839715fff..a24b301b6 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
## 0.49 (unreleased)
+### Parsing
+
+Improved parsing of qualified constructors in Haskell.
+
## 0.48 (released 12th July 2023)
### Parsing
diff --git a/src/parse/tree_sitter_parser.rs b/src/parse/tree_sitter_parser.rs
index e0cb81f79..2995d922a 100644
--- a/src/parse/tree_sitter_parser.rs
+++ b/src/parse/tree_sitter_parser.rs
@@ -425,9 +425,13 @@ pub fn from_language(language: guess::Language) -> TreeSitterConfig {
let language = unsafe { tree_sitter_haskell() };
TreeSitterConfig {
language,
- atom_nodes: vec!["qualified_variable", "qualified_module"]
- .into_iter()
- .collect(),
+ atom_nodes: vec![
+ "qualified_variable",
+ "qualified_module",
+ "qualified_constructor",
+ ]
+ .into_iter()
+ .collect(),
delimiter_tokens: vec![("[", "]"), ("(", ")")],
highlight_query: ts::Query::new(
language,