129 lines · 2.3 KB · Scheme
RawDownload
(comment)+ @comment.around (function_declaration  body: (_    "{"    (_)* @function.inside    "}")) @function.around (method_definition  body: (_    "{"    (_)* @function.inside    "}")) @function.around (function_expression  body: (_    "{"    (_)* @function.inside    "}")) @function.around ((arrow_function  body: (statement_block    "{"    (_)* @function.inside    "}")) @function.around  (#not-has-parent? @function.around variable_declarator)) ; Arrow function in variable declaration - capture the full declaration([  (lexical_declaration    (variable_declarator      value: (arrow_function        body: (statement_block          "{"          (_)* @function.inside          "}"))))  (variable_declaration    (variable_declarator      value: (arrow_function        body: (statement_block          "{"          (_)* @function.inside          "}"))))]) @function.around ; Arrow function in variable declaration (expression body fallback)([  (lexical_declaration    (variable_declarator      value: (arrow_function        body: (_) @function.inside)))  (variable_declaration    (variable_declarator      value: (arrow_function        body: (_) @function.inside)))]) @function.around ; Catch-all for arrow functions in other contexts (callbacks, etc.)((arrow_function  body: (_) @function.inside) @function.around  (#not-has-parent? @function.around variable_declarator)) (function_signature) @function.around (generator_function  body: (_    "{"    (_)* @function.inside    "}")) @function.around (generator_function_declaration  body: (_    "{"    (_)* @function.inside    "}")) @function.around (class_declaration  body: (_    "{"    [      (_)      ";"?    ]* @class.inside    "}")) @class.around (class  body: (_    "{"    (_)* @class.inside    "}")) @class.around (interface_declaration  body: (_    "{"    [      (_)      ";"?    ]* @class.inside    "}")) @class.around (enum_declaration  body: (_    "{"    [      (_)      ","?    ]* @class.inside    "}")) @class.around (ambient_declaration  (module    body: (_      "{"      [        (_)        ";"?      ]* @class.inside      "}"))) @class.around (internal_module  body: (_    "{"    [      (_)      ";"?    ]* @class.inside    "}")) @class.around (type_alias_declaration) @class.around