slint/api/node/rust/interpreter
Milian Wolff 0f6c3a4fd7 Use SmolStr in more places of the compiler infrastructure
This removes a lot of allocations and speeds up the compiler step
a bit. Sadly, this patch is very invasive as it touches a lot of
files. That said, each individual hunk is pretty trivial.

For a non-trivial real-world example, the impact is significant,
we get rid of ~29% of all allocations and improve the runtime by
about 4.8% (measured until the viewer loop would start).

Before:
```
Benchmark 1: ./target/release/slint-viewer ../slint-perf/app.slint
  Time (mean ± σ):     664.2 ms ±   6.7 ms    [User: 589.2 ms, System: 74.0 ms]
  Range (min … max):   659.0 ms … 682.4 ms    10 runs

        allocations:            4886888
        temporary allocations:  857508
```

After:
```
Benchmark 1: ./target/release/slint-viewer ../slint-perf/app.slint
  Time (mean ± σ):     639.5 ms ±  17.8 ms    [User: 556.9 ms, System: 76.2 ms]
  Range (min … max):   621.4 ms … 666.5 ms    10 runs

        allocations:            3544318
        temporary allocations:  495685
```
2024-10-17 18:04:58 +02:00
..
component_compiler.rs Use SmolStr in more places of the compiler infrastructure 2024-10-17 18:04:58 +02:00
component_definition.rs Improve source structure in the node api (#6164) 2024-09-30 08:49:35 +00:00
component_instance.rs Node.js: If a JS callback throws an exception, report the exception t… (#6416) 2024-10-01 13:57:50 +02:00
diagnostic.rs Improve source structure in the node api (#6164) 2024-09-30 08:49:35 +00:00
value.rs Use SmolStr in more places of the compiler infrastructure 2024-10-17 18:04:58 +02:00
window.rs Improve source structure in the node api (#6164) 2024-09-30 08:49:35 +00:00