nvim-treesitter/queries/php/locals.scm

87 lines
1.9 KiB
Scheme
Raw Normal View History

; Scopes
;-------
2020-09-12 18:55:44 +09:00
((class_declaration
name: (name) @local.definition.type) @local.scope
2024-01-06 15:05:50 +09:00
(#set! definition.type.scope "parent"))
2020-09-12 18:55:44 +09:00
((method_declaration
name: (name) @local.definition.method) @local.scope
2024-01-06 15:05:50 +09:00
(#set! definition.method.scope "parent"))
2020-09-12 18:55:44 +09:00
((function_definition
name: (name) @local.definition.function) @local.scope
2024-01-06 15:05:50 +09:00
(#set! definition.function.scope "parent"))
2020-09-12 18:55:44 +09:00
(anonymous_function_creation_expression
(anonymous_function_use_clause
(variable_name
(name) @local.definition.var))) @local.scope
; Definitions
;------------
2020-08-05 14:48:42 +09:00
(simple_parameter
(variable_name
(name) @local.definition.var))
2020-08-05 14:48:42 +09:00
2021-03-19 11:16:02 +09:00
(foreach_statement
(pair
(variable_name
(name) @local.definition.var)))
2021-03-19 11:16:02 +09:00
(foreach_statement
(variable_name
(name) @local.reference
2024-01-06 15:05:50 +09:00
(#set! reference.kind "var"))
2021-03-19 11:16:02 +09:00
(variable_name
(name) @local.definition.var))
2020-08-05 14:48:42 +09:00
(property_declaration
2020-09-12 18:55:44 +09:00
(property_element
(variable_name
(name) @local.definition.field)))
2020-08-05 14:48:42 +09:00
(namespace_use_clause
(qualified_name
(name) @local.definition.type))
2020-08-05 14:48:42 +09:00
; References
;------------
(named_type
(name) @local.reference
2024-01-06 15:05:50 +09:00
(#set! reference.kind "type"))
2020-09-12 18:55:44 +09:00
(named_type
(qualified_name) @local.reference
2024-01-06 15:05:50 +09:00
(#set! reference.kind "type"))
2020-09-12 18:55:44 +09:00
(variable_name
(name) @local.reference
2024-01-06 15:05:50 +09:00
(#set! reference.kind "var"))
2020-09-12 18:55:44 +09:00
(member_access_expression
name: (name) @local.reference
2024-01-06 15:05:50 +09:00
(#set! reference.kind "field"))
2020-09-12 18:55:44 +09:00
(member_call_expression
name: (name) @local.reference
2024-01-06 15:05:50 +09:00
(#set! reference.kind "method"))
2020-09-12 18:55:44 +09:00
(function_call_expression
2024-01-06 15:05:50 +09:00
function:
(qualified_name
(name) @local.reference
(#set! reference.kind "function")))
2020-09-12 18:55:44 +09:00
(object_creation_expression
(qualified_name
(name) @local.reference
2024-01-06 15:05:50 +09:00
(#set! reference.kind "type")))
2020-09-12 18:55:44 +09:00
(scoped_call_expression
2024-01-06 15:05:50 +09:00
scope:
(qualified_name
(name) @local.reference
(#set! reference.kind "type"))
name: (name) @local.reference
2024-01-06 15:05:50 +09:00
(#set! reference.kind "method"))