RX0068

Domínio: Análise sintática

Mensagem de erro

uma coleção sem nome passada como argumento é %s (%s)

Na mensagem, %s marca um valor que o motor preenche quando levanta o erro.

A história

Você passou uma coleção sem nome como argumento, e o motor recusou no parse. Vamos entender a regra. No rush, toda coleção deve ter um nome de portador. Existe uma exceção prática: em posição de argumento, uma coleção sem nome é permitida apenas se for homogênea e de números, porque isso permite cálculos. Então sum de colchete um, dois, três é válido. Qualquer outra coleção solta, com textos, com tipos misturados, ou com membros rotulados, é recusada. A mensagem diz o que a coleção é e traz a correção. Há também uma exceção importante: um mapa com rótulos dentro de um argumento que tem chave é permitido, porque a chave já o nomeia, como no budget de um process ponto new. A recusa vale só para coleções soltas em posição. Exemplo do erro: uma função chamada com uma lista de três textos escritos ali mesmo. A correção: primeiro guarde a lista num nome, por exemplo nomes igual à lista, e depois passe o nome.

Texto do catálogo de erros do motor do Rush.