RX0721

领域: 执行

错误消息

data.put[%s, …] 被拒绝:%s

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

小故事

上一回是名字有问题,这一回,是形状有问题。data.put 的工作,是把每个成员,放在它的键下面,所以它需要两样东西:一个带键的持有者,和带标签的成员。如果你给它的是一个列表,列表里装的是条目,没有键,put 不知道该放在哪个键下面。如果你交过来的值,没有标签,同样没有键可以落脚。比如,你想把一个没有名字的数字,直接 put 进一张表里,表不知道它该叫什么。消息里的第二个信息,会告诉你是哪一种:是列表,还是缺少标签。怎么改?如果是列表,用 data.add 往里加;如果是带键的集合,就给每个值配上标签。记住:put 需要键,没有键,就没有地方可放。

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