diff options
Diffstat (limited to 'src/args.zig')
| -rw-r--r-- | src/args.zig | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/src/args.zig b/src/args.zig index a34c14c..4234ada 100644 --- a/src/args.zig +++ b/src/args.zig | |||
| @@ -21,14 +21,7 @@ pub const SliceIterator = struct { | |||
| 21 | const Error = error{}; | 21 | const Error = error{}; |
| 22 | 22 | ||
| 23 | args: []const []const u8, | 23 | args: []const []const u8, |
| 24 | index: usize, | 24 | index: usize = 0, |
| 25 | |||
| 26 | pub fn init(args: []const []const u8) SliceIterator { | ||
| 27 | return SliceIterator{ | ||
| 28 | .args = args, | ||
| 29 | .index = 0, | ||
| 30 | }; | ||
| 31 | } | ||
| 32 | 25 | ||
| 33 | pub fn next(iter: *SliceIterator) Error!?[]const u8 { | 26 | pub fn next(iter: *SliceIterator) Error!?[]const u8 { |
| 34 | if (iter.args.len <= iter.index) | 27 | if (iter.args.len <= iter.index) |
| @@ -40,8 +33,8 @@ pub const SliceIterator = struct { | |||
| 40 | }; | 33 | }; |
| 41 | 34 | ||
| 42 | test "clap.args.SliceIterator" { | 35 | test "clap.args.SliceIterator" { |
| 43 | const args = [][]const u8{ "A", "BB", "CCC" }; | 36 | const args = [_][]const u8{ "A", "BB", "CCC" }; |
| 44 | var iter = SliceIterator.init(args); | 37 | var iter = SliceIterator{ .args = args }; |
| 45 | 38 | ||
| 46 | for (args) |a| { | 39 | for (args) |a| { |
| 47 | const b = try iter.next(); | 40 | const b = try iter.next(); |