helix-mirror/runtime/queries/kotlin/injections.scm

37 lines
1.0 KiB
Scheme
Raw Normal View History

((comment) @injection.content
(#set! injection.language "comment"))
; There are 3 ways to define a regex
; - "[abc]?".toRegex()
((call_expression
(navigation_expression
([(line_string_literal) (multi_line_string_literal)] @injection.content)
(navigation_suffix
((simple_identifier) @_function
(#eq? @_function "toRegex")))))
(#set! injection.language "regex"))
; - Regex("[abc]?")
((call_expression
((simple_identifier) @_function
(#eq? @_function "Regex"))
(call_suffix
(value_arguments
(value_argument
[ (line_string_literal) (multi_line_string_literal) ] @injection.content))))
(#set! injection.language "regex"))
; - Regex.fromLiteral("[abc]?")
((call_expression
(navigation_expression
((simple_identifier) @_class
(#eq? @_class "Regex"))
(navigation_suffix
((simple_identifier) @_function
(#eq? @_function "fromLiteral"))))
(call_suffix
(value_arguments
(value_argument
[ (line_string_literal) (multi_line_string_literal) ] @injection.content))))
(#set! injection.language "regex"))