nvim-treesitter/tests/query/highlights/gleam/function.gleam

128 lines
4.5 KiB
Gleam
Raw Normal View History

2022-02-12 17:58:14 -08:00
pub fn add(x: Int, y: Int) -> Int {
2023-12-24 12:52:21 +01:00
// <- @type.qualifier
// ^^ @keyword.function
// ^^^ @function
// ^ @punctuation.bracket
// ^ @parameter
// ^ @punctuation.delimiter
// ^^^ @type.builtin
// ^ @punctuation.delimiter
// ^ @parameter
// ^ @punctuation.delimiter
// ^^^ @type.builtin
// ^ @punctuation.bracket
// ^ @punctuation.delimiter
// ^^^ @type.builtin
// ^ @punctuation.bracket
2022-02-12 17:58:14 -08:00
}
2023-12-24 12:52:21 +01:00
// <- @punctuation.bracket
2022-02-12 17:58:14 -08:00
pub fn twice(f: fn(t) -> t, x: t) -> t {
2023-12-24 12:52:21 +01:00
// <- @type.qualifier
// ^ @keyword.function
// ^^^^^ @function
// ^ @punctuation.bracket
// ^ @parameter
// ^ @punctuation.delimiter
// ^^ @keyword.function
// ^ @punctuation.bracket
// ^ @type
// ^ @punctuation.bracket
// ^^ @punctuation.delimiter
// ^ @type
// ^ @punctuation.delimiter
// ^ @parameter
// ^ @punctuation.delimiter
// ^ @type
// ^ @punctuation.bracket
// ^^ @punctuation.delimiter
// ^ @type
// ^ @punctuation.bracket
2022-02-12 17:58:14 -08:00
}
2023-12-24 12:52:21 +01:00
// <- @punctuation.bracket
2022-02-12 17:58:14 -08:00
fn list_of_two(my_value: a) -> List(a) {
2023-12-24 12:52:21 +01:00
// <- @keyword.function
// ^ @function
// ^ @punctuation.bracket
// ^ @parameter
// ^ @punctuation.delimiter
// ^ @type
// ^ @punctuation.bracket
// ^ @punctuation.delimiter
// ^^^^ @type.builtin
// ^ @punctuation.bracket
// ^ @type
// ^ @punctuation.bracket
// ^ @punctuation.bracket
2022-02-12 17:58:14 -08:00
}
2023-12-24 12:52:21 +01:00
// <- @punctuation.bracket
2022-02-12 17:58:14 -08:00
fn replace(
2023-12-24 12:52:21 +01:00
// <- @keyword.function
// ^^^^^^^ @function
// ^ @punctuation.bracket
2022-02-12 17:58:14 -08:00
in string: String,
2023-12-24 12:52:21 +01:00
// <- @label
// ^^^^^^ @parameter
// ^ @punctuation.delimiter
// ^^^^^^ @type.builtin
// ^ @punctuation.delimiter
2022-02-12 17:58:14 -08:00
each pattern: String,
2023-12-24 12:52:21 +01:00
// <- @label
// ^^^^^^^ @parameter
// ^ @punctuation.delimiter
// ^^^^^^ @type.builtin
// ^ @punctuation.delimiter
2022-02-12 17:58:14 -08:00
with replacement: String,
2023-12-24 12:52:21 +01:00
// <- @label
// ^^^^^^^^^^^ @parameter
// ^ @punctuation.delimiter
// ^^^^^^ @type.builtin
// ^ @punctuation.delimiter
2022-02-12 17:58:14 -08:00
) {
replace(in: "A,B,C", each: ",", with: " ")
2023-12-24 12:52:21 +01:00
// <- @function.call
// ^ @punctuation.bracket
// ^^ @label
// ^ @punctuation.delimiter
// ^^^^^^^ @string
// ^ @punctuation.delimiter
// ^^^^ @label
// ^ @punctuation.delimiter
// ^^^ @string
// ^ @punctuation.delimiter
// ^^^^ @label
// ^ @punctuation.delimiter
// ^^^ @string
// ^ @punctuation.bracket
2022-02-12 17:58:14 -08:00
}
2023-12-24 12:52:21 +01:00
// <- @punctuation.bracket
2022-02-12 17:58:14 -08:00
pub external fn random_float() -> Float = "rand" "uniform"
2023-12-24 12:52:21 +01:00
// <- @type.qualifier
// ^^^^^^^^ @type.qualifier
// ^^ @keyword.function
// ^^^^^^^^^^^^ @function
// ^ @punctuation.bracket
// ^ @punctuation.bracket
// ^^ @punctuation.delimiter
// ^^^^^ @type.builtin
// ^ @operator
// ^^^^^^ @namespace
// ^^^^^^^^^ @function
2022-02-12 17:58:14 -08:00
pub external fn inspect(a) -> a = "Elixir.IO" "inspect"
2023-12-24 12:52:21 +01:00
// <- @type.qualifier
// ^^^^^^^^ @type.qualifier
// ^^ @keyword.function
// ^^^^^^^ @function
// ^ @punctuation.bracket
// ^ @type
// ^ @punctuation.bracket
// ^^ @punctuation.delimiter
// ^ @type
// ^ @operator
// ^^^^^^^^^^^ @namespace
// ^^^^^^^^^ @function