Remove unused buf field from std.fmt.Parser (#21994)

And make the initialization less error prone by removing a default for
iter, which is required for a functional parser

std: Add a brief doc comment for `std.fmt.Parser`
This commit is contained in:
Andrew Barchuk 2024-11-25 00:09:36 +01:00 committed by GitHub
parent b2030cb9ab
commit 1f37b70344
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -224,7 +224,6 @@ pub const Placeholder = struct {
pub fn parse(comptime str: anytype) Placeholder {
const view = std.unicode.Utf8View.initComptime(&str);
comptime var parser = Parser{
.buf = &str,
.iter = view.iterator(),
};
@ -311,10 +310,13 @@ pub const Specifier = union(enum) {
named: []const u8,
};
/// A stream based parser for format strings.
///
/// Allows to implement formatters compatible with std.fmt without replicating
/// the standard library behavior.
pub const Parser = struct {
buf: []const u8,
pos: usize = 0,
iter: std.unicode.Utf8Iterator = undefined,
iter: std.unicode.Utf8Iterator,
// Returns a decimal number or null if the current character is not a
// digit