helix/runtime/queries/llvm/highlights.scm
Sebastian Neubauer 8c29b76bcc
Improve llvm highlighting and queries (#1388)
* Improve llvm highlighting and queries

The llvm tree-sitter parser was updated to support scopes and more
accurate highlighting.

* Group highlight expressions better
2021-12-29 18:30:44 +09:00

159 lines
1.8 KiB
Scheme

(type) @type
(type_keyword) @type.builtin
(type [
(local_var)
(global_var)
] @type)
(argument) @variable.parameter
(_ inst_name: _ @keyword.operator)
[
"catch"
"filter"
] @keyword.operator
[
"to"
"nuw"
"nsw"
"exact"
"unwind"
"from"
"cleanup"
"swifterror"
"volatile"
"inbounds"
"inrange"
(icmp_cond)
(fcmp_cond)
(fast_math)
] @keyword.control
(_ callee: _ @function)
(function_header name: _ @function)
[
"declare"
"define"
(calling_conv)
] @keyword.function
[
"target"
"triple"
"datalayout"
"source_filename"
"addrspace"
"blockaddress"
"align"
"syncscope"
"within"
"uselistorder"
"uselistorder_bb"
"module"
"asm"
"sideeffect"
"alignstack"
"inteldialect"
"unwind"
"type"
"global"
"constant"
"externally_initialized"
"alias"
"ifunc"
"section"
"comdat"
"thread_local"
"localdynamic"
"initialexec"
"localexec"
"any"
"exactmatch"
"largest"
"nodeduplicate"
"samesize"
"distinct"
"attributes"
"vscale"
"no_cfi"
(linkage_aux)
(dso_local)
(visibility)
(dll_storage_class)
(unnamed_addr)
(attribute_name)
] @keyword
(function_header [
(linkage)
(calling_conv)
(unnamed_addr)
] @keyword.function)
[
(string)
(cstring)
] @string
(number) @constant.numeric.integer
(comment) @comment
(label) @label
(_ inst_name: "ret" @keyword.control.return)
(float) @constant.numeric.float
[
(local_var)
(global_var)
] @variable
[
(struct_value)
(array_value)
(vector_value)
] @constructor
[
"("
")"
"["
"]"
"{"
"}"
"<"
">"
"<{"
"}>"
] @punctuation.bracket
[
","
":"
] @punctuation.delimiter
[
"="
"|"
"x"
"..."
] @operator
[
"true"
"false"
] @constant.builtin.boolean
[
"undef"
"poison"
"null"
"none"
"zeroinitializer"
] @constant.builtin
(ERROR) @error