//! The error of an arena operation that does not fit.
use fmt;
/// The error of a [`Scratch`](super::Scratch) operation whose worst-case result does not fit
/// in the free part of the arena.
///
/// # Examples
///
/// ```
/// use implicit_predicates_core::{Scratch, ScratchExhausted};
///
/// let mut buf = [0.0; 1];
/// let mut scratch = Scratch::borrowed(&mut buf);
/// assert_eq!(scratch.push(&[1e-20, 1.0]), Err(ScratchExhausted));
/// assert_eq!(ScratchExhausted.to_string(), "scratch arena exhausted");
/// ```
;