summaryrefslogtreecommitdiff
path: root/queries
diff options
context:
space:
mode:
authorMateus Melchiades <mateusbmelchiades@gmail.com>2022-03-07 11:02:25 -0300
committerStephan Seitz <stephan.seitz@fau.de>2022-03-07 15:51:08 +0100
commitcbfa53db225447ef9bc8f1ce20d210af447b53a6 (patch)
treead36a46bbb91370680cdeb85ff0309fe9464841f /queries
parentcada76c4901e2389c0f82ac11d0c9c61d5205e90 (diff)
highlights(vala): Reflect upstream refactor
Diffstat (limited to 'queries')
-rw-r--r--queries/vala/highlights.scm28
1 files changed, 19 insertions, 9 deletions
diff --git a/queries/vala/highlights.scm b/queries/vala/highlights.scm
index 912c7cad..d1be3253 100644
--- a/queries/vala/highlights.scm
+++ b/queries/vala/highlights.scm
@@ -1,15 +1,24 @@
+; Identifiers
+
+((identifier) @constant (#match? @constant "^[A-Z][A-Z\\d_]+$"))
+
(namespaced_identifier
left: [
- (identifier) @namespace
+ ; Lowercased names in lhs typically are variables, while camel cased are namespaces
+ ; ((identifier) @namespace (#match? @namespace "^[A-Z]+[a-z]+$"))
+ ((identifier) @variable (#match? @variable "^[a-z]"))
(_)
]
right: [
- ((identifier) @constructor (#match? @constructor "^[A-Z]*[a-z]+"))
- ((identifier) @constant (#match? @constant "^[A-Z][A-Z_]*"))
+ ; Lowercased are variables, camel cased are types
+ ; ((identifier) @parameter (#match? @parameter "^[a-z]"))
+ ((identifier) @type (#match? @type "^[A-Z]+[a-z]+$"))
(_)
]
)
+((identifier) @constructor (#match? @constructor "^[A-Z]*[a-z]+"))
+
; Pointers
(address_of_identifier "&" @symbol)
@@ -155,9 +164,6 @@
name: [
(identifier) @method
(generic_identifier (_) @type)
- (namespaced_identifier
- (_) @method .
- )
]
)
@@ -165,9 +171,13 @@
identifier: [
(identifier) @method
(generic_identifier (_) @type)
- (namespaced_identifier
- (_) @method .
- )
+ ]
+)
+
+(member_function
+ identifier: [
+ (identifier) @method
+ (generic_identifier (_) @type)
]
)