TOC Prev Next

Types and are Values

Bottom / Error

Specifying duplicate fields with conflicting values results in an error or bottom. Bottom is a special value in CUE, denoted _|_, that indicates an error such as conflicting values. Any error in CUE results in _|_. Logically all errors are equal, although errors may be associated with metadata such as an error message.

Note that an error is different from null: null is a valid value, whereas _|_ is not.

bottom.cue:

a: 4
a: 5

l: [ 1, 2 ]
l: [ 1, 3 ]

list: [0, 1, 2]
val: list[3]

$ cue eval -i bottom.cue

list: [0, 1, 2]
a: _|_ // conflicting values 4 and 5
l: [1, _|_, // conflicting values 2 and 3
]
val: _|_ // index 3 out of bounds