aboutsummaryrefslogtreecommitdiff
path: root/runtime/queries/cpp/highlights.scm
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/queries/cpp/highlights.scm')
-rw-r--r--runtime/queries/cpp/highlights.scm68
1 files changed, 68 insertions, 0 deletions
diff --git a/runtime/queries/cpp/highlights.scm b/runtime/queries/cpp/highlights.scm
new file mode 100644
index 00000000..3315fde0
--- /dev/null
+++ b/runtime/queries/cpp/highlights.scm
@@ -0,0 +1,68 @@
+; inherits: c
+
+; Functions
+
+(call_expression
+ function: (scoped_identifier
+ name: (identifier) @function))
+
+(template_function
+ name: (identifier) @function)
+
+(template_method
+ name: (field_identifier) @function)
+
+(template_function
+ name: (scoped_identifier
+ name: (identifier) @function))
+
+(function_declarator
+ declarator: (scoped_identifier
+ name: (identifier) @function))
+
+(function_declarator
+ declarator: (scoped_identifier
+ name: (identifier) @function))
+
+(function_declarator
+ declarator: (field_identifier) @function)
+
+; Types
+
+((namespace_identifier) @type
+ (#match? @type "^[A-Z]"))
+
+(auto) @type
+
+; Constants
+
+(this) @variable.builtin
+(nullptr) @constant
+
+; Keywords
+
+"catch" @keyword
+"class" @keyword
+"constexpr" @keyword
+"delete" @keyword
+"explicit" @keyword
+"final" @keyword
+"friend" @keyword
+"mutable" @keyword
+"namespace" @keyword
+"noexcept" @keyword
+"new" @keyword
+"override" @keyword
+"private" @keyword
+"protected" @keyword
+"public" @keyword
+"template" @keyword
+"throw" @keyword
+"try" @keyword
+"typename" @keyword
+"using" @keyword
+"virtual" @keyword
+
+; Strings
+
+(raw_string_literal) @string