pub const TAGS_QUERY: &str = ";; Method and Function declarations\n(contract_declaration (_\n    (function_definition\n        name: (identifier) @name) @definition.method))\n\n(source_file\n    (function_definition\n        name: (identifier) @name) @definition.function)\n\n;; Contract, struct, enum and interface declarations\n(contract_declaration\n  name: (identifier) @name) @definition.class\n\n(interface_declaration\n  name: (identifier) @name) @definition.interface\n\n(library_declaration\n  name: (identifier) @name) @definition.interface\n\n(struct_declaration name: (identifier) @name) @definition.class\n(enum_declaration name: (identifier) @name) @definition.class\n(event_definition name: (identifier) @name) @definition.class\n\n;; Function calls\n(call_expression (expression (identifier)) @name ) @reference.call\n\n(call_expression\n    (expression (member_expression\n        property: (_) @name ))) @reference.call\n\n;; Log emit\n(emit_statement name: (_) @name) @reference.class\n\n\n;; Inheritance\n\n(inheritance_specifier\n    ancestor: (user_defined_type (_) @name . )) @reference.class\n\n\n;; Imports ( note that unknown is not standardised )\n(import_directive\n  import_name: (_) @name ) @reference.unknown\n";
Expand description

The symbol tagging query for this language.