; https://github.com/nvim-treesitter/nvim-treesitter/blob/main/CONTRIBUTING.md ; https://tree-sitter.github.io/tree-sitter/using-parsers/queries/1-syntax.html (comment) @comment (string) @string ; Modules (module_definition ["module"] @module) (module_definition (identifier) @variable) ; Methods/Functions (method_definition ["method"] @function.method) (function_definition ["function"] @function) (verification_clause [ "decreases" "ensures" "invariant" "modifies" "provides" "reads" "requires" ] @attribute) (returns_clause ["returns"] @keyword.return) ; Variables (var_decl ["var"] @variable) (primitive_type) @type (number) @number (import_declaration) @keyword.import (attributes) @attribute ; Control flow (if_statement ["if" "else"] @keyword.conditional) (if_expression ["if" "then" "else"] @keyword.conditional) ; Looping constructs (while_statement ["while"] @keyword.repeat) (while_statement ["invariant"] @attribute) ; Debug (assert_statement ["assert"] @keyword.debug) (expect_statement ["expect"] @keyword.debug) "(" @punctuation.bracket ")" @punctuation.bracket "<" @punctuation.bracket ">" @punctuation.bracket "[" @punctuation.bracket "]" @punctuation.bracket "{" @punctuation.bracket "}" @punctuation.bracket ";" @punctuation.delimiter