Files
openidea/crates/ide-language/queries/ocaml/outline.scm

17 lines
1.2 KiB
Scheme

(module_definition (module_binding (module_name) @name)) @def.module
(module_type_definition (module_type_name) @name) @def.interface
(type_definition (type_binding name: (type_constructor) @name body: (record_declaration))) @def.struct
(type_definition (type_binding name: (type_constructor) @name body: (variant_declaration))) @def.enum
(type_definition (type_binding name: (type_constructor) @name)) @def.type
(constructor_declaration (constructor_name) @name) @def.enum_member
(field_declaration (field_name) @name) @def.field
(value_definition (let_binding pattern: (value_name) @name (parameter))) @def.function
(value_definition (let_binding pattern: (value_name) @name body: (fun_expression))) @def.function
(value_definition (let_binding pattern: (value_name) @name body: (function_expression))) @def.function
(value_definition (let_binding pattern: (value_name) @name)) @def.variable
(value_specification (value_name) @name) @def.function
(external (value_name) @name) @def.function
(class_definition (class_binding (class_name) @name)) @def.class
(method_definition (method_name) @name) @def.method
(exception_definition (constructor_declaration (constructor_name) @name)) @def.class