Cómo escapar llaves en una cadena de formato en Rust
¡Hola a todos! Acabo de empezar a aprender Rust y me encontré con un problema al trabajar con la macro `format!` (y `println!` también). Necesito imprimir una cadena que contenga llaves literales `{` y `}`. Por ejemplo, quiero generar una salida similar a JSON o simplemente mostrar una expresión matemática como `{x: 5}`.
Intenté escribir así:
```rust
let x = 5;
println!("{x: {}}", x);
```
Pero el compilador da un error: "invalid format string: expected `'}'` but string was terminated". Entiendo que las llaves en Rust se usan como placeholders para sustituir valores. Pero, ¿cómo puedo imprimir las llaves mismas como caracteres normales?
Probé escapar con barra invertida `\{` — no funciona. Probé duplicar `{{` — el compilador empezó a quejarse de otra manera. En otros lenguajes (Python, C#), simplemente duplico las llaves o uso escape. ¿Cómo se hace correctamente en Rust?
Necesito imprimir algo como:
- `{ valor: 42 }`
- O generar JSON: `{"key": "value"}`
¡Ayuda!