use crate;
;
;
/// Defines the things that can be appended to a [`_BitStrLit`] to make a concrete Number representation
/// form a [`B`]itString
/// When paired with a `BitLit` terminator in a [`B`]itString, forms a concrete representation of an
/// integer.
/// A conceptual "Base Case" for the leading bits to represent a Number of more than one bit.
/// Any [`B`]itString is a valid [`_BitStrLit`] if the leading bits form a valid [`_BitStrLit`], and the
/// terminating bit is a valid [`BitLit`]
///
/// This is functionally a recursive definition, with the base-case being `_1` and the recursive
/// case being any multi-bit bitstring.
///
/// effectively, 0b100101 => (10010) ++ 1 => ((1001) ++ 0) ++ 1 => ... => (((((1, 0), 0), 1), 0), 1)