// Copyright 2026 Leo Cheng
// SPDX-License-Identifier: Apache-2.0
///|
/// Why an input was refused.
///
/// `Malformed` carries the offset, `Absent` the name of what was missing, and
/// `Missing` the id that is not in the vocabulary, so that a caller reading a
/// table of a hundred thousand entries can find the one that broke.
pub(all) suberror Refused {
///
/// The bytes are not the shape this reader accepts.
Malformed(String, Int32)
///
/// A required piece of the input is not there.
Absent(String)
///
/// The input asks for something this reader does not implement.
Unsupported(String)
///
/// There is no token with this id.
Missing(Int32)
///
/// The text holds a token that the caller did not allow here.
Disallowed(String, Int32)
}