Skip to content

Commit e6cb5df

Browse files
committed
fix: improve readability and translation in chapter 9
1 parent 0edbcfd commit e6cb5df

2 files changed

+60
-60
lines changed

src/ch09-01-unrecoverable-errors-with-panic.md

+21-21
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,21 @@ causar un panic en la práctica: tomando una acción que hace que nuestro códig
66
entre en pánico (como acceder a una matriz más allá del final) o llamando
77
explícitamente a la macro `panic!`. En ambos casos, causamos un pánico en
88
nuestro programa. De forma predeterminada, estos pánicos imprimirán un mensaje
9-
de error, desenrollarán, limpiarán la pila y se cerrarán. A través de una
9+
de error, se desharán, limpiarán la pila y se cerrarán. A través de una
1010
variable de entorno, también puede hacer que Rust muestre la pila de llamadas
1111
cuando ocurre un pánico para facilitar el seguimiento de la fuente del panic.
1212

13-
> ### Desenrollar el Stack o Abortar en respuesta a un Panic
13+
> ### Deshacer la pila o abortar en respuesta a un pánico
1414
>
15-
> Por defecto, cuando ocurre un panic, el programa comienza a _desenrollar_,
15+
> Por defecto, cuando ocurre un panic, el programa comienza a _deshacerse_,
1616
> lo que significa que Rust retrocede por la pila y limpia los datos de cada
1717
> función que encuentra. Sin embargo, este retroceso y limpieza es mucho
1818
> trabajo. Rust, por lo tanto, le permite elegir la alternativa de _abortar_
1919
> inmediatamente, lo que termina el programa sin limpiar.
2020
>
2121
> La memoria que el programa estaba usando deberá ser limpiada
2222
> por el sistema operativo. Si en su proyecto necesita hacer que el binario
23-
> resultante sea lo más pequeño posible, puede cambiar de desenrollar a abortar
23+
> resultante sea lo más pequeño posible, puede cambiar de deshacer el programa a abortarlo
2424
> al producir un pánico agregando `panic = 'abort'` a las secciones
2525
> `[profile]` apropiadas en su archivo _Cargo.toml_. Por ejemplo, si desea
2626
> abortar en caso de pánico en el modo de lanzamiento, agregue esto:
@@ -54,16 +54,16 @@ línea, vemos la llamada a la macro `panic!`. En otros casos, la llamada a
5454
`panic!` podría estar en el código que nuestro código llama, y el nombre de
5555
archivo y el número de línea informados por el mensaje de error serán el
5656
código de otra persona donde se llama a la macro `panic!`, no la línea de
57-
nuestro código que finalmente condujo a la llamada a `panic!`. Podemos usar la
58-
traza de las funciones de las que provino la llamada a `panic!` para
57+
nuestro código que finalmente condujo a la llamada a `panic!`. Podemos usar el
58+
backtrace de las funciones de las que provino la llamada a `panic!` para
5959
determinar la parte de nuestro código que está causando el problema.
60-
Discutiremos las trazas en más detalle a continuación.
60+
Discutiremos el backtrace en más detalle a continuación.
6161

62-
### Usando un Backtrace de `panic!`
62+
### Usando el backtrace de `panic!`
6363

6464
Veamos otro ejemplo de cómo es cuando una llamada a `panic!` proviene de una
6565
biblioteca debido a un error en nuestro código en lugar de que nuestro código
66-
llame directamente a la macro. La lista 9-1 tiene algún código que intenta
66+
llame directamente a la macro. El listado 9-1 tiene algún código que intenta
6767
acceder a un índice en un vector más allá del rango de índices válidos.
6868

6969
<span class="filename">Filename: src/main.rs</span>
@@ -72,7 +72,7 @@ acceder a un índice en un vector más allá del rango de índices válidos.
7272
{{#rustdoc_include ../listings/ch09-error-handling/listing-09-01/src/main.rs}}
7373
```
7474

75-
<span class="caption">Listing 9-1: Intentando acceder a un elemento más allá del
75+
<span class="caption">Listado 9-1: Intentando acceder a un elemento más allá del
7676
fin de un vector, que provocará una llamada a `panic!`</span>
7777

7878
Aquí, estamos intentando acceder al elemento 100 de nuestro vector (que está
@@ -99,17 +99,17 @@ continuar. Intentémoslo y veamos:
9999

100100
Este error apunta a la línea 4 de nuestro `main.rs` donde intentamos acceder al
101101
índice 99. La siguiente línea de nota nos dice que podemos establecer la
102-
variable de entorno `RUST_BACKTRACE` para obtener una traza de exactamente lo
103-
que sucedió para causar el error. Una _traza_ es una lista de todas las
104-
funciones que se han llamado para llegar a este punto. Las trazas en Rust
105-
funcionan como lo hacen en otros lenguajes: la clave para leer la traza es
102+
variable de entorno `RUST_BACKTRACE` para obtener el backtrace de exactamente lo
103+
que sucedió para causar el error. El _Backtrace_ es una lista de todas las
104+
funciones que se han llamado para llegar a este punto. El backtrace en Rust
105+
funciona como lo hacen en otros lenguajes: la clave para leer el backtrace es
106106
comenzar desde la parte superior y leer hasta que vea archivos que escribió.
107107
Ese es el lugar donde se originó el problema. Las líneas por encima de ese
108108
punto son el código que su código ha llamado; las líneas a continuación son el
109109
código que llamó a su código. Estas líneas antes y después pueden incluir
110-
código de Rust core, código de biblioteca estándar o cajas que está usando.
111-
Intentemos obtener una traza estableciendo la variable de entorno
112-
`RUST_BACKTRACE` a cualquier valor excepto 0. La lista 9-2 muestra una salida
110+
código de Rust core, código de biblioteca estándar o crates que estés usando.
111+
Intentemos obtener el backtrace estableciendo la variable de entorno
112+
`RUST_BACKTRACE` a cualquier valor excepto 0. El listado 9-2 muestra una salida
113113
similar a la que verás.
114114

115115
<!-- manual-regeneration
@@ -142,21 +142,21 @@ stack backtrace:
142142
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
143143
```
144144

145-
<span class="caption">Listing 9-2: El backtrace generado por una llamada a
145+
<span class="caption">Listado 9-2: El backtrace generado por una llamada a
146146
`panic!` se muestra cuando la variable de entorno `RUST_BACKTRACE` está
147147
configurada</span>
148148

149149
¡Eso es mucho resultado! La salida exacta que vea puede ser diferente según su
150-
sistema operativo y la versión de Rust. Para obtener trazas con esta
150+
sistema operativo y la versión de Rust. Para obtener el backtrace con esta
151151
información, deben estar habilitados los símbolos de depuración. Los símbolos
152152
de depuración están habilitados de forma predeterminada cuando se usa `cargo
153153
build` o `cargo run` sin el indicador `--release`, como tenemos aquí.
154154

155-
En la salida en la Lista 9-2, la línea 6 de la traza apunta a la línea en
155+
En la salida en el listado 9-2, la línea 6 del backtrace apunta a la línea en
156156
nuestro proyecto que está causando el problema: la línea 4 de `src/main.rs`. Si
157157
no queremos que nuestro programa entre en pánico, debemos comenzar nuestra
158158
investigación en la ubicación señalada por la primera línea que menciona un
159-
archivo que escribimos. En la Lista 9-1, donde escribimos deliberadamente un
159+
archivo que escribimos. En la listado 9-1, donde escribimos deliberadamente un
160160
código que entraría en pánico, la forma de solucionar el pánico es no solicitar
161161
un elemento más allá del rango de los índices del vector. Cuando su código
162162
entra en pánico en el futuro, deberá averiguar qué acción está tomando el

0 commit comments

Comments
 (0)