Lectura de código real
Leer el contrato de una biblioteca
La implementación pública de la operación push de Vec comprueba si necesita capacidad antes de escribir el nuevo elemento. Su contrato importa más que asumir una dirección estable.
Fragmento abreviado de la condición, con el resto explicado en palabras:
si longitud = capacidad: crecer antes de escribirEl comentario es didáctico. Después del crecimiento se obtiene el destino para la escritura y se actualiza la longitud. No se debe conservar un puntero previo suponiendo que sobrevivió a esa operación.
Referencia: biblioteca estándar de Rust, módulo alloc::vec, función push.