RX0083

Dominio: Análisis sintáctico

Mensaje de error

%s es un miembro, y `=` no escribe a través de una selección (%s)

En el mensaje, %s marca un valor que el motor completa cuando lanza el error.

La historia

Intentaste cambiar un miembro de una colección con el signo igual, y rush no escribe de esa forma. Por ejemplo, escribir xs punto uno igual a noventa y nueve, o m punto age igual a tres. Un miembro se nombra por selección, pero no tiene nombre propio, y todo cambio a una colección debe ser una versión nueva, hecha a través de las puertas de data. La ley es: update es la única puerta que sobrescribe, y toda mutación es acreción, nada se reescribe en el sitio. Y si el contenedor es inmutable, directamente rechaza cualquier cambio. El motor lo detecta en el análisis y te nombra la puerta correcta. La solución: usa data.update, con el nombre de la colección, el miembro y el valor nuevo. Así el cambio queda como una versión nueva del historial. El igual sirve para dar nombre a un valor; para modificar un miembro, hay una puerta especial.

Texto del catálogo de errores del motor de Rush.