RX0171

领域: 解析

错误消息

一个什么都匹配不了的 first 表:%s(%s)

消息中的 %s 表示引擎抛出错误时填入的具体内容。

小故事

在 rush 里,有一个内置函数叫 first,它是一张表:一条一条的条件,每个条件对应一个值,引擎从上往下找,第一个为真的条件,就用它的值。可是,如果所有的条件,都不为真呢?所以,每张 first 表的最后,必须有一个 else 冒号,加上一个值,作为兜底,而且 else 后面,不能再有别的条目。如果你的表,没有 else,或者 else 后面,还跟着别的条目,引擎就会在解析时拒绝,这样,没有条件为真,这种情况,就永远不需要在运行时回答。消息里,会告诉你,是这两种里的哪一种。怎么改?在表的最后,加上 else,或者把 else 后面的条目,挪到前面。记住:first 表,必须以 else 收尾。

文本来自 Rush 引擎的错误目录。