aboutsummaryrefslogtreecommitdiffstats
path: root/runtime/queries/soql
diff options
context:
space:
mode:
authorChristian Clason <c.clason@uni-graz.at>2023-06-12 09:54:30 -0600
committerChristian Clason <c.clason@uni-graz.at>2025-05-12 18:43:40 +0200
commit692b051b09935653befdb8f7ba8afdb640adf17b (patch)
tree167162b6b129ae04f68c5735078521a72917c742 /runtime/queries/soql
parentfeat(c-family): inherit injections (diff)
downloadnvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar
nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.gz
nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.bz2
nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.lz
nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.xz
nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.zst
nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.zip
feat!: drop modules, general refactor and cleanup
Diffstat (limited to 'runtime/queries/soql')
-rw-r--r--runtime/queries/soql/highlights.scm161
1 files changed, 161 insertions, 0 deletions
diff --git a/runtime/queries/soql/highlights.scm b/runtime/queries/soql/highlights.scm
new file mode 100644
index 000000000..11e9d582a
--- /dev/null
+++ b/runtime/queries/soql/highlights.scm
@@ -0,0 +1,161 @@
+(field_identifier
+ (identifier) @variable.member)
+
+(field_identifier
+ (dotted_identifier
+ (identifier) @variable.member))
+
+(type_of_clause
+ (identifier) @variable.member)
+
+(when_expression
+ (identifier) @type)
+
+(when_expression
+ (field_list
+ (identifier) @variable.member))
+
+(when_expression
+ (field_list
+ (dotted_identifier
+ (identifier) @variable.member)))
+
+(else_expression
+ (field_list
+ (identifier) @variable.member))
+
+(else_expression
+ (field_list
+ (dotted_identifier
+ (identifier) @variable.member)))
+
+(alias_expression
+ (identifier) @label)
+
+(storage_identifier) @keyword.modifier
+
+(_
+ function_name: (identifier) @function)
+
+(date_literal) @string.special
+
+[
+ ","
+ "."
+ ":"
+ "("
+ ")"
+] @punctuation.delimiter
+
+[
+ "AND"
+ "OR"
+ "NOT"
+ "LIKE"
+ "NOT_IN"
+ "INCLUDES"
+ "EXCLUDES"
+] @keyword.operator
+
+[
+ "="
+ "!="
+ "<="
+ ">="
+] @operator
+
+(value_comparison_operator
+ [
+ "<"
+ ">"
+ ] @operator)
+
+(set_comparison_operator
+ "IN" @keyword.operator)
+
+[
+ (int)
+ (decimal)
+ (currency_literal)
+] @number
+
+(string_literal) @string
+
+[
+ (date)
+ (date_time)
+] @string.special
+
+[
+ "TRUE"
+ "FALSE"
+] @boolean
+
+(null_literal) @constant.builtin
+
+[
+ "ABOVE"
+ "ABOVE_OR_BELOW"
+ "ALL"
+ "AS"
+ "ASC"
+ "AT"
+ "BELOW"
+ "CUSTOM"
+ "DATA_CATEGORY"
+ "DESC"
+ "END"
+ "FIELDS"
+ "FOR"
+ "FROM"
+ "GROUP_BY"
+ "HAVING"
+ "LIMIT"
+ "NULLS_FIRST"
+ "NULLS_LAST"
+ "OFFSET"
+ "ORDER_BY"
+ "REFERENCE"
+ "SELECT"
+ "STANDARD"
+ "TRACKING"
+ "TYPEOF"
+ "UPDATE"
+ "USING"
+ "SCOPE"
+ "LOOKUP"
+ "BIND"
+ "VIEW"
+ "VIEWSTAT"
+ "WITH"
+] @keyword
+
+[
+ "WHERE"
+ "WHEN"
+ "ELSE"
+ "THEN"
+] @keyword.conditional
+
+; Using Scope
+[
+ "delegated"
+ "everything"
+ "mine"
+ "mine_and_my_groups"
+ "my_territory"
+ "my_team_territory"
+ "team"
+] @keyword
+
+; With
+[
+ "maxDescriptorPerRecord"
+ "RecordVisibilityContext"
+ "Security_Enforced"
+ "supportsDomains"
+ "supportsDelegates"
+ "System_Mode"
+ "User_Mode"
+ "UserId"
+] @keyword