diff options
| author | AtomToast <reg-2@t-online.de> | 2024-11-28 08:28:51 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-11-28 08:28:51 +0100 |
| commit | 02f8777252fe089c9ea19aa8e19745b505512655 (patch) | |
| tree | 06fce59f8b1504f01986933ceb7619eef6754dd2 /queries/zig | |
| parent | bot(lockfile): update solidity, sql (diff) | |
| download | nvim-treesitter-02f8777252fe089c9ea19aa8e19745b505512655.tar nvim-treesitter-02f8777252fe089c9ea19aa8e19745b505512655.tar.gz nvim-treesitter-02f8777252fe089c9ea19aa8e19745b505512655.tar.bz2 nvim-treesitter-02f8777252fe089c9ea19aa8e19745b505512655.tar.lz nvim-treesitter-02f8777252fe089c9ea19aa8e19745b505512655.tar.xz nvim-treesitter-02f8777252fe089c9ea19aa8e19745b505512655.tar.zst nvim-treesitter-02f8777252fe089c9ea19aa8e19745b505512655.zip | |
feat(zig): add locals queries (#7401)
Diffstat (limited to 'queries/zig')
| -rw-r--r-- | queries/zig/locals.scm | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/queries/zig/locals.scm b/queries/zig/locals.scm index 8b1378917..b9e63441d 100644 --- a/queries/zig/locals.scm +++ b/queries/zig/locals.scm @@ -1 +1,96 @@ +; Definitions +(function_declaration + name: (identifier) @local.definition.function) +(parameter + name: (identifier) @local.definition.parameter) + +(variable_declaration + (identifier) @local.definition.var) + +(variable_declaration + (identifier) @local.definition.type + (enum_declaration)) + +(container_field + type: (identifier) @local.definition.field) + +(enum_declaration + (function_declaration + name: (identifier) @local.definition.method)) + +(variable_declaration + (identifier) @local.definition.type + (struct_declaration)) + +(struct_declaration + (function_declaration + name: (identifier) @local.definition.method)) + +(container_field + name: (identifier) @local.definition.field) + +(variable_declaration + (identifier) @local.definition.type + (union_declaration)) + +(union_declaration + (function_declaration + name: (identifier) @local.definition.method)) + +(payload + (identifier) @local.definition.var) + +(block_label + (identifier) @local.definition) + +; References +(identifier) @local.reference + +(parameter + type: (identifier) @local.reference + (#set! reference.kind "type")) + +(pointer_type + (identifier) @local.reference + (#set! reference.kind "type")) + +(nullable_type + (identifier) @local.reference + (#set! reference.kind "type")) + +(struct_initializer + (identifier) @local.reference + (#set! reference.kind "type")) + +(array_type + (_) + (identifier) @local.reference + (#set! reference.kind "type")) + +(slice_type + (identifier) @local.reference + (#set! reference.kind "type")) + +(field_expression + member: (identifier) @local.reference + (#set! reference.kind "field")) + +(call_expression + function: (field_expression + member: (identifier) @local.reference + (#set! reference.kind "function"))) + +(break_label + (identifier) @local.reference) + +[ + (for_statement) + (if_statement) + (while_statement) + (function_declaration) + (block) + (source_file) + (enum_declaration) + (struct_declaration) +] @local.scope |
