diff options
| author | 2019-01-17 15:52:45 +0100 | |
|---|---|---|
| committer | 2019-01-17 15:52:45 +0100 | |
| commit | 938b3ff7787a3e99bc41cac9add5ff25835eee22 (patch) | |
| tree | efefe7cd2d0cbaebdb664de37848a5ad01a87fef /example/streaming-clap.zig | |
| parent | Renamed helpEx to helpFull and added a new helpEx that wraps helpFull (diff) | |
| download | zig-clap-938b3ff7787a3e99bc41cac9add5ff25835eee22.tar.gz zig-clap-938b3ff7787a3e99bc41cac9add5ff25835eee22.tar.xz zig-clap-938b3ff7787a3e99bc41cac9add5ff25835eee22.zip | |
Refactored the arg iterators to new be static interface implementations
* This makes arg iterators easier to understand and implement
* It should also be faster than using the fieldToParent builtin
Diffstat (limited to 'example/streaming-clap.zig')
| -rw-r--r-- | example/streaming-clap.zig | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/example/streaming-clap.zig b/example/streaming-clap.zig index 57ebe71..a52a222 100644 --- a/example/streaming-clap.zig +++ b/example/streaming-clap.zig | |||
| @@ -17,15 +17,14 @@ pub fn main() !void { | |||
| 17 | 17 | ||
| 18 | // We then initialize an argument iterator. We will use the OsIterator as it nicely | 18 | // We then initialize an argument iterator. We will use the OsIterator as it nicely |
| 19 | // wraps iterating over arguments the most efficient way on each os. | 19 | // wraps iterating over arguments the most efficient way on each os. |
| 20 | var os_iter = clap.args.OsIterator.init(allocator); | 20 | var iter = clap.args.OsIterator.init(allocator); |
| 21 | const iter = &os_iter.iter; | 21 | defer iter.deinit(); |
| 22 | defer os_iter.deinit(); | ||
| 23 | 22 | ||
| 24 | // Consume the exe arg. | 23 | // Consume the exe arg. |
| 25 | const exe = try iter.next(); | 24 | const exe = try iter.next(); |
| 26 | 25 | ||
| 27 | // Finally we initialize our streaming parser. | 26 | // Finally we initialize our streaming parser. |
| 28 | var parser = clap.StreamingClap(u8, clap.args.OsIterator.Error).init(params, iter); | 27 | var parser = clap.StreamingClap(u8, clap.args.OsIterator).init(params, &iter); |
| 29 | 28 | ||
| 30 | // Because we use a streaming parser, we have to consume each argument parsed individually. | 29 | // Because we use a streaming parser, we have to consume each argument parsed individually. |
| 31 | while (try parser.next()) |arg| { | 30 | while (try parser.next()) |arg| { |