RX0160

Dominio: Análisis sintáctico

Mensaje de error

un fn privado alcanzado desde fuera de su módulo: %s (%s)

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

La historia

Llamaste a una función privada desde fuera de su módulo. En rush, dentro de un proyecto, una función solo es pública si el manifest punto rush de la raíz la lista. Si no está en la lista, es privada, y es el valor por defecto seguro: se trata como privada a todos los efectos. El manifest es un archivo con domain data, con una línea public igual a una lista de nombres completos con puntos. Una función privada se puede llamar desde su propio módulo, pero desde cualquier otro sitio se rechaza en el análisis, antes de ejecutar una sola sentencia. Lo mismo vale al alcanzar otro proyecto: solo las funciones que su manifest lista están a la vista. El mensaje trae la función, su módulo y la línea que habría que añadir al manifest. Un script suelto y la shell no tienen manifest, y en ellos todo es público. La solución: añade el nombre completo de la función a la lista public, si realmente debe ser pública. Lo que no se declara público, se queda en casa.

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