chore(tests): consistent captures

This commit is contained in:
Christian Clason 2023-12-24 12:52:21 +01:00
parent 17fae3f4a3
commit 10dd49958c
60 changed files with 872 additions and 873 deletions

View file

@ -1,13 +1,13 @@
pub fn main() {
assert Ok(i) = parse_int("123")
// <- exception
// ^^ constructor
// ^ punctuation.bracket
// ^ variable
// ^ punctuation.bracket
// ^ operator
// ^^^^^^^^^ function.call
// ^ punctuation.bracket
// ^^^^^ string
// ^ punctuation.bracket
// <- @exception
// ^^ @constructor
// ^ @punctuation.bracket
// ^ @variable
// ^ @punctuation.bracket
// ^ @operator
// ^^^^^^^^^ @function.call
// ^ @punctuation.bracket
// ^^^^^ @string
// ^ @punctuation.bracket
}

View file

@ -1,127 +1,127 @@
pub fn add(x: Int, y: Int) -> Int {
// <- 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
// <- @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
}
// <- punctuation.bracket
// <- @punctuation.bracket
pub fn twice(f: fn(t) -> t, x: t) -> t {
// <- 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
// <- @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
}
// <- punctuation.bracket
// <- @punctuation.bracket
fn list_of_two(my_value: a) -> List(a) {
// <- keyword.function
// ^ function
// ^ punctuation.bracket
// ^ parameter
// ^ punctuation.delimiter
// ^ type
// ^ punctuation.bracket
// ^ punctuation.delimiter
// ^^^^ type.builtin
// ^ punctuation.bracket
// ^ type
// ^ punctuation.bracket
// ^ punctuation.bracket
// <- @keyword.function
// ^ @function
// ^ @punctuation.bracket
// ^ @parameter
// ^ @punctuation.delimiter
// ^ @type
// ^ @punctuation.bracket
// ^ @punctuation.delimiter
// ^^^^ @type.builtin
// ^ @punctuation.bracket
// ^ @type
// ^ @punctuation.bracket
// ^ @punctuation.bracket
}
// <- punctuation.bracket
// <- @punctuation.bracket
fn replace(
// <- keyword.function
// ^^^^^^^ function
// ^ punctuation.bracket
// <- @keyword.function
// ^^^^^^^ @function
// ^ @punctuation.bracket
in string: String,
// <- label
// ^^^^^^ parameter
// ^ punctuation.delimiter
// ^^^^^^ type.builtin
// ^ punctuation.delimiter
// <- @label
// ^^^^^^ @parameter
// ^ @punctuation.delimiter
// ^^^^^^ @type.builtin
// ^ @punctuation.delimiter
each pattern: String,
// <- label
// ^^^^^^^ parameter
// ^ punctuation.delimiter
// ^^^^^^ type.builtin
// ^ punctuation.delimiter
// <- @label
// ^^^^^^^ @parameter
// ^ @punctuation.delimiter
// ^^^^^^ @type.builtin
// ^ @punctuation.delimiter
with replacement: String,
// <- label
// ^^^^^^^^^^^ parameter
// ^ punctuation.delimiter
// ^^^^^^ type.builtin
// ^ punctuation.delimiter
// <- @label
// ^^^^^^^^^^^ @parameter
// ^ @punctuation.delimiter
// ^^^^^^ @type.builtin
// ^ @punctuation.delimiter
) {
replace(in: "A,B,C", each: ",", with: " ")
// <- function.call
// ^ punctuation.bracket
// ^^ label
// ^ punctuation.delimiter
// ^^^^^^^ string
// ^ punctuation.delimiter
// ^^^^ label
// ^ punctuation.delimiter
// ^^^ string
// ^ punctuation.delimiter
// ^^^^ label
// ^ punctuation.delimiter
// ^^^ string
// ^ punctuation.bracket
// <- @function.call
// ^ @punctuation.bracket
// ^^ @label
// ^ @punctuation.delimiter
// ^^^^^^^ @string
// ^ @punctuation.delimiter
// ^^^^ @label
// ^ @punctuation.delimiter
// ^^^ @string
// ^ @punctuation.delimiter
// ^^^^ @label
// ^ @punctuation.delimiter
// ^^^ @string
// ^ @punctuation.bracket
}
// <- punctuation.bracket
// <- @punctuation.bracket
pub external fn random_float() -> Float = "rand" "uniform"
// <- type.qualifier
// ^^^^^^^^ type.qualifier
// ^^ keyword.function
// ^^^^^^^^^^^^ function
// ^ punctuation.bracket
// ^ punctuation.bracket
// ^^ punctuation.delimiter
// ^^^^^ type.builtin
// ^ operator
// ^^^^^^ namespace
// ^^^^^^^^^ function
// <- @type.qualifier
// ^^^^^^^^ @type.qualifier
// ^^ @keyword.function
// ^^^^^^^^^^^^ @function
// ^ @punctuation.bracket
// ^ @punctuation.bracket
// ^^ @punctuation.delimiter
// ^^^^^ @type.builtin
// ^ @operator
// ^^^^^^ @namespace
// ^^^^^^^^^ @function
pub external fn inspect(a) -> a = "Elixir.IO" "inspect"
// <- type.qualifier
// ^^^^^^^^ type.qualifier
// ^^ keyword.function
// ^^^^^^^ function
// ^ punctuation.bracket
// ^ type
// ^ punctuation.bracket
// ^^ punctuation.delimiter
// ^ type
// ^ operator
// ^^^^^^^^^^^ namespace
// ^^^^^^^^^ function
// <- @type.qualifier
// ^^^^^^^^ @type.qualifier
// ^^ @keyword.function
// ^^^^^^^ @function
// ^ @punctuation.bracket
// ^ @type
// ^ @punctuation.bracket
// ^^ @punctuation.delimiter
// ^ @type
// ^ @operator
// ^^^^^^^^^^^ @namespace
// ^^^^^^^^^ @function

View file

@ -1,22 +1,22 @@
import gleam/io
// <- include
// ^ namespace
// ^ operator
// ^ namespace
// <- @include
// ^ @namespace
// ^ @operator
// ^ @namespace
import cat as kitten
// <- include
// ^ namespace
// ^ keyword
// ^ namespace
// <- @include
// ^ @namespace
// ^ @keyword
// ^ @namespace
import animal/cat.{Cat, stroke}
// <- include
// ^ namespace
// ^ operator
// ^ punctuation.delimiter
// ^ punctuation.bracket
// ^^^ type
// ^ punctuation.delimiter
// ^^^^^^ function
// ^ punctuation.bracket
// <- @include
// ^ @namespace
// ^ @operator
// ^ @punctuation.delimiter
// ^ @punctuation.bracket
// ^^^ @type
// ^ @punctuation.delimiter
// ^^^^^^ @function
// ^ @punctuation.bracket

View file

@ -1,18 +1,18 @@
pub fn run() {
1
// <- number
// <- @number
|> add(_, 2)
// <- operator
// ^^^ function.call
// ^ punctuation.bracket
// ^ comment
// ^ punctuation.delimiter
// ^ number
// ^ punctuation.bracket
// <- @operator
// ^^^ @function.call
// ^ @punctuation.bracket
// ^ @comment
// ^ @punctuation.delimiter
// ^ @number
// ^ @punctuation.bracket
|> add(3)
// <- operator
// ^^^ function.call
// ^ punctuation.bracket
// ^ number
// ^ punctuation.bracket
// <- @operator
// ^^^ @function.call
// ^ @punctuation.bracket
// ^ @number
// ^ @punctuation.bracket
}

View file

@ -1,7 +1,7 @@
fn favourite_number() -> Int {
todo("We're going to decide which number is best tomorrow")
// <- keyword
// ^ punctuation.bracket
// ^ string
// ^ punctuation.bracket
// <- @keyword
// ^ @punctuation.bracket
// ^ @string
// ^ @punctuation.bracket
}

View file

@ -1,84 +1,84 @@
pub type Cat {
// <- type.qualifier
// ^^^^ keyword
// ^^^ type
// ^ punctuation.bracket
// <- @type.qualifier
// ^^^^ @keyword
// ^^^ @type
// ^ @punctuation.bracket
Cat(name: String, cuteness: Int)
// <- constructor
// ^ punctuation.bracket
// ^^^^ property
// ^ punctuation.delimiter
// ^^^^^^ type.builtin
// ^ punctuation.delimiter
// ^^^^^^^^ property
// ^ punctuation.delimiter
// ^^^ type.builtin
// ^ punctuation.bracket
// <- @constructor
// ^ @punctuation.bracket
// ^^^^ @property
// ^ @punctuation.delimiter
// ^^^^^^ @type.builtin
// ^ @punctuation.delimiter
// ^^^^^^^^ @property
// ^ @punctuation.delimiter
// ^^^ @type.builtin
// ^ @punctuation.bracket
}
fn cats() {
Cat(name: "Nubi", cuteness: 2001)
// <- type
// ^ punctuation.bracket
// ^^^^ property
// ^ punctuation.delimiter
// ^^^^^^ string
// ^ punctuation.delimiter
// ^^^^^^^^ property
// ^ punctuation.delimiter
// ^^^^ number
// ^ punctuation.bracket
// <- @type
// ^ @punctuation.bracket
// ^^^^ @property
// ^ @punctuation.delimiter
// ^^^^^^ @string
// ^ @punctuation.delimiter
// ^^^^^^^^ @property
// ^ @punctuation.delimiter
// ^^^^ @number
// ^ @punctuation.bracket
Cat("Ginny", 1950)
// <- constructor
// ^ punctuation.bracket
// ^^^^^^^ string
// ^ punctuation.delimiter
// ^^^^ number
// ^ punctuation.bracket
// <- @constructor
// ^ @punctuation.bracket
// ^^^^^^^ @string
// ^ @punctuation.delimiter
// ^^^^ @number
// ^ @punctuation.bracket
}
type Box(inner_type) {
// <- keyword
// ^^^ type
// ^ punctuation.bracket
// ^^^^^^^^^^ type
// ^ punctuation.bracket
// ^ punctuation.bracket
// <- @keyword
// ^^^ @type
// ^ @punctuation.bracket
// ^^^^^^^^^^ @type
// ^ @punctuation.bracket
// ^ @punctuation.bracket
Box(inner: inner_type)
// <- constructor
// ^ punctuation.bracket
// ^^^^^ property
// ^ punctuation.delimiter
// ^^^^^^^^^^ type
// ^ punctuation.bracket
// <- @constructor
// ^ @punctuation.bracket
// ^^^^^ @property
// ^ @punctuation.delimiter
// ^^^^^^^^^^ @type
// ^ @punctuation.bracket
}
pub opaque type Counter {
// <- type.qualifier
// ^^^^^^ type.qualifier
// ^^^^ keyword
// ^^^^^^^ type
// ^ punctuation.bracket
// <- @type.qualifier
// ^^^^^^ @type.qualifier
// ^^^^ @keyword
// ^^^^^^^ @type
// ^ @punctuation.bracket
Counter(value: Int)
}
pub fn have_birthday(person) {
Person(..person, age: person.age + 1, is_happy: True)
// <- constructor
// ^ punctuation.bracket
// ^^ operator
// ^^^^^^ variable
// ^ punctuation.delimiter
// ^^^ property
// ^ punctuation.delimiter
// ^^^^^^ variable
// ^ punctuation.delimiter
// ^^^ property
// ^ operator
// ^ number
// ^ punctuation.delimiter
// ^^^^^^^^ property
// ^ punctuation.delimiter
// ^^^^ boolean
// ^ punctuation.bracket
// <- @constructor
// ^ @punctuation.bracket
// ^^ @operator
// ^^^^^^ @variable
// ^ @punctuation.delimiter
// ^^^ @property
// ^ @punctuation.delimiter
// ^^^^^^ @variable
// ^ @punctuation.delimiter
// ^^^ @property
// ^ @operator
// ^ @number
// ^ @punctuation.delimiter
// ^^^^^^^^ @property
// ^ @punctuation.delimiter
// ^^^^ @boolean
// ^ @punctuation.bracket
}