//! > Hover

//! > test_runner_name
test_hover

//! > cairo_project.toml
[crate_roots]
hello = "src"

[config.global]
edition = "2023_11"

//! > cairo_code
fn main() {
    let mut xy<caret>z = unkn<caret>own_function();
    let y = xy<caret>z * 2;
}

fn f(ab<caret>c) -> felt252 {
    2 * ab<caret>c
}

//! > hover #0
// = source context
    let mut xy<caret>z = unknown_function();
// = highlight
No highlight information.
// = popover
Type: `<missing>`

//! > hover #1
// = source context
    let mut xyz = unkn<caret>own_function();
// = highlight
No highlight information.
// = popover
```cairo
<missing>
```

//! > hover #2
// = source context
    let y = xy<caret>z * 2;
// = highlight
    let y = <sel>xyz</sel> * 2;
// = popover
```cairo
let mut xyz: <missing>
```

//! > hover #3
// = source context
fn f(ab<caret>c) -> felt252 {
// = highlight
fn f(<sel>abc</sel>) -> felt252 {
// = popover
```cairo
hello
```
```cairo
fn f(abc) -> felt252
```

//! > hover #4
// = source context
    2 * ab<caret>c
// = highlight
    2 * <sel>abc</sel>
// = popover
```cairo
abc: <missing>
```
