RX0363

Domain: Execution

Error message

%s poured a member that is no value (%s)

In the message, %s marks a value that the engine fills in when it raises the error.

The story

Someone tried to put a member into a collection, and the member was not really a value. Let's clear up what counts. Every member must be a value of a declared kind. A quoted empty text is a perfectly good value, an empty string you wrote on purpose. But an empty text that has no declared kind is nothing at all. A text that cannot be read back as a value is nothing too. And a collection does not travel as text: it crosses only as a versioned reference, so a text that claims to be a reference, but names no version, points at nothing. Rush will not store these as members, because a member that is not a value would poison everything that reads it later. So it refuses right at the pour, and the second slot says which case it was. Picture a script that reads a missing field and tries to store the result. The fix is to make sure there is really a value before you add it, or to write the empty text explicitly with quotes if that is what you mean.

Text from the Rush engine's error catalogue.