fn endOfBufferInNumber(self: *@This(), allow_end: bool) !Token
fn endOfBufferInNumber(self: *@This(), allow_end: bool) !Token { const slice = self.takeValueSlice(); if (self.is_end_of_input) { if (!allow_end) return error.UnexpectedEndOfInput; self.state = .post_value; return Token{ .number = slice }; } if (slice.len == 0) return error.BufferUnderrun; return Token{ .partial_number = slice }; }