Coverage Report

Created: 2025-09-27 06:48

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/rust/registry/src/index.crates.io-1949cf8c6b5b557f/winnow-0.7.13/src/parser.rs
Line
Count
Source
1
//! Basic types to build the parsers
2
3
use crate::ascii::Caseless as AsciiCaseless;
4
use crate::combinator::impls;
5
#[cfg(feature = "unstable-recover")]
6
#[cfg(feature = "std")]
7
use crate::error::FromRecoverableError;
8
use crate::error::{AddContext, FromExternalError, ParseError, ParserError, Result};
9
use crate::stream::{Compare, Location, ParseSlice, Stream, StreamIsPartial};
10
#[cfg(feature = "unstable-recover")]
11
#[cfg(feature = "std")]
12
use crate::stream::{Recover, Recoverable};
13
14
/// Core trait for parsing
15
///
16
/// The simplest way to implement a `Parser` is with a function
17
/// ```rust
18
/// use winnow::prelude::*;
19
///
20
/// fn empty(input: &mut &str) -> ModalResult<()> {
21
///     let output = ();
22
///     Ok(output)
23
/// }
24
///
25
/// let (input, output) = empty.parse_peek("Hello").unwrap();
26
/// assert_eq!(input, "Hello");  // We didn't consume any input
27
/// ```
28
///
29
/// which can be made stateful by returning a function
30
/// ```rust
31
/// use winnow::prelude::*;
32
///
33
/// fn empty<O: Clone>(output: O) -> impl FnMut(&mut &str) -> ModalResult<O> {
34
///     move |input: &mut &str| {
35
///         let output = output.clone();
36
///         Ok(output)
37
///     }
38
/// }
39
///
40
/// let (input, output) = empty("World").parse_peek("Hello").unwrap();
41
/// assert_eq!(input, "Hello");  // We didn't consume any input
42
/// assert_eq!(output, "World");
43
/// ```
44
///
45
/// Additionally, some basic types implement `Parser` as well, including
46
/// - `u8` and `char`, see [`winnow::token::one_of`][crate::token::one_of]
47
/// - `&[u8]` and `&str`, see [`winnow::token::literal`][crate::token::literal]
48
pub trait Parser<I, O, E> {
49
    /// Parse all of `input`, generating `O` from it
50
    ///
51
    /// This is intended for integrating your parser into the rest of your application.
52
    ///
53
    /// For one [`Parser`] to drive another [`Parser`] forward or for
54
    /// [incremental parsing][StreamIsPartial], see instead [`Parser::parse_next`].
55
    ///
56
    /// This assumes the [`Parser`] intends to read all of `input` and will return an
57
    /// [`eof`][crate::combinator::eof] error if it does not
58
    /// To ignore trailing `input`, combine your parser with a [`rest`][crate::token::rest]
59
    /// (e.g. `(parser, rest).parse(input)`).
60
    ///
61
    /// See also the [tutorial][crate::_tutorial::chapter_6].
62
    #[inline]
63
    fn parse(&mut self, mut input: I) -> Result<O, ParseError<I, <E as ParserError<I>>::Inner>>
64
    where
65
        Self: core::marker::Sized,
66
        I: Stream,
67
        // Force users to deal with `Incomplete` when `StreamIsPartial<true>`
68
        I: StreamIsPartial,
69
        E: ParserError<I>,
70
        <E as ParserError<I>>::Inner: ParserError<I>,
71
    {
72
        debug_assert!(
73
            !I::is_partial_supported(),
74
            "partial streams need to handle `ErrMode::Incomplete`"
75
        );
76
77
        let start = input.checkpoint();
78
        let (o, _) = (self.by_ref(), crate::combinator::eof)
79
            .parse_next(&mut input)
80
            .map_err(|e| {
81
                let e = e.into_inner().unwrap_or_else(|_err| {
82
                    panic!("complete parsers should not report `ErrMode::Incomplete(_)`")
83
                });
84
                ParseError::new(input, start, e)
85
            })?;
86
        Ok(o)
87
    }
88
89
    /// Take tokens from the [`Stream`], turning it into the output
90
    ///
91
    /// This includes advancing the input [`Stream`] to the next location.
92
    ///
93
    /// On error, `input` will be left pointing at the error location.
94
    ///
95
    /// This is intended for a [`Parser`] to drive another [`Parser`] forward or for
96
    /// [incremental parsing][StreamIsPartial]
97
    fn parse_next(&mut self, input: &mut I) -> Result<O, E>;
98
99
    /// Take tokens from the [`Stream`], turning it into the output
100
    ///
101
    /// This returns a copy of the [`Stream`] advanced to the next location.
102
    ///
103
    /// <div class="warning">
104
    ///
105
    /// Generally, prefer [`Parser::parse_next`].
106
    /// This is primarily intended for:
107
    /// - Migrating from older versions / `nom`
108
    /// - Testing [`Parser`]s
109
    ///
110
    /// For look-ahead parsing, see instead [`peek`][crate::combinator::peek].
111
    ///
112
    /// </div>
113
    #[inline(always)]
114
    fn parse_peek(&mut self, mut input: I) -> Result<(I, O), E> {
115
        match self.parse_next(&mut input) {
116
            Ok(o) => Ok((input, o)),
117
            Err(err) => Err(err),
118
        }
119
    }
120
121
    /// Treat `&mut Self` as a parser
122
    ///
123
    /// This helps when needing to move a `Parser` when all you have is a `&mut Parser`.
124
    ///
125
    /// # Example
126
    ///
127
    /// Because parsers are `FnMut`, they can be called multiple times. This prevents moving `f`
128
    /// into [`length_take`][crate::binary::length_take] and `g` into
129
    /// [`Parser::complete_err`]:
130
    /// ```rust,compile_fail
131
    /// # use winnow::prelude::*;
132
    /// # use winnow::Parser;
133
    /// # use winnow::error::ParserError;
134
    /// # use winnow::binary::length_take;
135
    /// pub fn length_value<'i, O, E: ParserError<&'i [u8]>>(
136
    ///     mut f: impl Parser<&'i [u8], usize, E>,
137
    ///     mut g: impl Parser<&'i [u8], O, E>
138
    /// ) -> impl Parser<&'i [u8], O, E> {
139
    ///   move |i: &mut &'i [u8]| {
140
    ///     let mut data = length_take(f).parse_next(i)?;
141
    ///     let o = g.complete_err().parse_next(&mut data)?;
142
    ///     Ok(o)
143
    ///   }
144
    /// }
145
    /// ```
146
    ///
147
    /// By adding `by_ref`, we can make this work:
148
    /// ```rust
149
    /// # use winnow::prelude::*;
150
    /// # use winnow::Parser;
151
    /// # use winnow::error::ParserError;
152
    /// # use winnow::binary::length_take;
153
    /// pub fn length_value<'i, O, E: ParserError<&'i [u8]>>(
154
    ///     mut f: impl Parser<&'i [u8], usize, E>,
155
    ///     mut g: impl Parser<&'i [u8], O, E>
156
    /// ) -> impl Parser<&'i [u8], O, E> {
157
    ///   move |i: &mut &'i [u8]| {
158
    ///     let mut data = length_take(f.by_ref()).parse_next(i)?;
159
    ///     let o = g.by_ref().complete_err().parse_next(&mut data)?;
160
    ///     Ok(o)
161
    ///   }
162
    /// }
163
    /// ```
164
    #[inline(always)]
165
    fn by_ref(&mut self) -> impls::ByRef<'_, Self, I, O, E>
166
    where
167
        Self: core::marker::Sized,
168
    {
169
        impls::ByRef {
170
            p: self,
171
            i: Default::default(),
172
            o: Default::default(),
173
            e: Default::default(),
174
        }
175
    }
176
177
    /// Produce the provided value
178
    ///
179
    /// # Example
180
    ///
181
    /// ```rust
182
    /// # use winnow::{error::ErrMode, Parser};
183
    /// # use winnow::prelude::*;
184
    /// use winnow::ascii::alpha1;
185
    /// # fn main() {
186
    ///
187
    /// fn parser<'i>(input: &mut &'i str) -> ModalResult<i32> {
188
    ///     alpha1.value(1234).parse_next(input)
189
    /// }
190
    ///
191
    /// assert_eq!(parser.parse_peek("abcd"), Ok(("", 1234)));
192
    /// assert!(parser.parse_peek("123abcd;").is_err());
193
    /// # }
194
    /// ```
195
    #[doc(alias = "to")]
196
    #[inline(always)]
197
41.5M
    fn value<O2>(self, val: O2) -> impls::Value<Self, I, O, O2, E>
198
41.5M
    where
199
41.5M
        Self: core::marker::Sized,
200
41.5M
        O2: Clone,
201
    {
202
41.5M
        impls::Value {
203
41.5M
            parser: self,
204
41.5M
            val,
205
41.5M
            i: Default::default(),
206
41.5M
            o: Default::default(),
207
41.5M
            e: Default::default(),
208
41.5M
        }
209
41.5M
    }
<winnow::token::literal<char, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::value::<char>
Line
Count
Source
197
36.5M
    fn value<O2>(self, val: O2) -> impls::Value<Self, I, O, O2, E>
198
36.5M
    where
199
36.5M
        Self: core::marker::Sized,
200
36.5M
        O2: Clone,
201
    {
202
36.5M
        impls::Value {
203
36.5M
            parser: self,
204
36.5M
            val,
205
36.5M
            i: Default::default(),
206
36.5M
            o: Default::default(),
207
36.5M
            e: Default::default(),
208
36.5M
        }
209
36.5M
    }
Unexecuted instantiation: <winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::value::<&bstr::bstr::BStr>
Unexecuted instantiation: <winnow::token::literal<u8, &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::value::<u8>
Unexecuted instantiation: <u8 as winnow::parser::Parser<&[u8], u8, winnow::error::ErrMode<()>>>::value::<&bstr::bstr::BStr>
<winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::value::<&bstr::bstr::BStr>
Line
Count
Source
197
2.51M
    fn value<O2>(self, val: O2) -> impls::Value<Self, I, O, O2, E>
198
2.51M
    where
199
2.51M
        Self: core::marker::Sized,
200
2.51M
        O2: Clone,
201
    {
202
2.51M
        impls::Value {
203
2.51M
            parser: self,
204
2.51M
            val,
205
2.51M
            i: Default::default(),
206
2.51M
            o: Default::default(),
207
2.51M
            e: Default::default(),
208
2.51M
        }
209
2.51M
    }
<winnow::token::literal<u8, &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::value::<u8>
Line
Count
Source
197
67.7k
    fn value<O2>(self, val: O2) -> impls::Value<Self, I, O, O2, E>
198
67.7k
    where
199
67.7k
        Self: core::marker::Sized,
200
67.7k
        O2: Clone,
201
    {
202
67.7k
        impls::Value {
203
67.7k
            parser: self,
204
67.7k
            val,
205
67.7k
            i: Default::default(),
206
67.7k
            o: Default::default(),
207
67.7k
            e: Default::default(),
208
67.7k
        }
209
67.7k
    }
<u8 as winnow::parser::Parser<&[u8], u8, winnow::error::ErrMode<()>>>::value::<&bstr::bstr::BStr>
Line
Count
Source
197
2.51M
    fn value<O2>(self, val: O2) -> impls::Value<Self, I, O, O2, E>
198
2.51M
    where
199
2.51M
        Self: core::marker::Sized,
200
2.51M
        O2: Clone,
201
    {
202
2.51M
        impls::Value {
203
2.51M
            parser: self,
204
2.51M
            val,
205
2.51M
            i: Default::default(),
206
2.51M
            o: Default::default(),
207
2.51M
            e: Default::default(),
208
2.51M
        }
209
2.51M
    }
210
211
    /// Produce a type's default value
212
    ///
213
    /// # Example
214
    ///
215
    /// ```rust
216
    /// # use winnow::{error::ErrMode, Parser};
217
    /// # use winnow::prelude::*;
218
    /// use winnow::ascii::alpha1;
219
    /// # fn main() {
220
    ///
221
    /// fn parser<'i>(input: &mut &'i str) -> ModalResult<u32> {
222
    ///     alpha1.default_value().parse_next(input)
223
    /// }
224
    ///
225
    /// assert_eq!(parser.parse_peek("abcd"), Ok(("", 0)));
226
    /// assert!(parser.parse_peek("123abcd;").is_err());
227
    /// # }
228
    /// ```
229
    #[inline(always)]
230
    fn default_value<O2>(self) -> impls::DefaultValue<Self, I, O, O2, E>
231
    where
232
        Self: core::marker::Sized,
233
        O2: core::default::Default,
234
    {
235
        impls::DefaultValue {
236
            parser: self,
237
            o2: Default::default(),
238
            i: Default::default(),
239
            o: Default::default(),
240
            e: Default::default(),
241
        }
242
    }
243
244
    /// Discards the output of the `Parser`
245
    ///
246
    /// # Example
247
    ///
248
    /// ```rust
249
    /// # use winnow::{error::ErrMode, Parser};
250
    /// # use winnow::prelude::*;
251
    /// use winnow::ascii::alpha1;
252
    /// # fn main() {
253
    ///
254
    /// fn parser<'i>(input: &mut &'i str) -> ModalResult<()> {
255
    ///     alpha1.void().parse_next(input)
256
    /// }
257
    ///
258
    /// assert_eq!(parser.parse_peek("abcd"), Ok(("", ())));
259
    /// assert!(parser.parse_peek("123abcd;").is_err());
260
    /// # }
261
    /// ```
262
    #[inline(always)]
263
    fn void(self) -> impls::Void<Self, I, O, E>
264
    where
265
        Self: core::marker::Sized,
266
    {
267
        impls::Void {
268
            parser: self,
269
            i: Default::default(),
270
            o: Default::default(),
271
            e: Default::default(),
272
        }
273
    }
274
275
    /// Convert the parser's output to another type using [`std::convert::From`]
276
    ///
277
    /// # Example
278
    ///
279
    /// ```rust
280
    /// # use winnow::prelude::*;
281
    /// # use winnow::error::ContextError;
282
    /// use winnow::ascii::alpha1;
283
    /// # fn main() {
284
    ///
285
    /// fn parser1<'s>(i: &mut &'s str) -> ModalResult<&'s str> {
286
    ///   alpha1(i)
287
    /// }
288
    ///
289
    /// let mut parser2 = parser1.output_into();
290
    ///
291
    /// // the parser converts the &str output of the child parser into a Vec<u8>
292
    /// let bytes: ModalResult<(_, Vec<u8>), _> = parser2.parse_peek("abcd");
293
    /// assert_eq!(bytes, Ok(("", vec![97, 98, 99, 100])));
294
    /// # }
295
    /// ```
296
    #[inline(always)]
297
    fn output_into<O2>(self) -> impls::OutputInto<Self, I, O, O2, E>
298
    where
299
        Self: core::marker::Sized,
300
        O: Into<O2>,
301
    {
302
        impls::OutputInto {
303
            parser: self,
304
            i: Default::default(),
305
            o: Default::default(),
306
            o2: Default::default(),
307
            e: Default::default(),
308
        }
309
    }
310
311
    /// Produce the consumed input as produced value.
312
    ///
313
    /// # Example
314
    ///
315
    /// ```rust
316
    /// # use winnow::{error::ErrMode, Parser};
317
    /// # use winnow::prelude::*;
318
    /// use winnow::ascii::{alpha1};
319
    /// use winnow::combinator::separated_pair;
320
    /// # fn main() {
321
    ///
322
    /// fn parser<'i>(input: &mut &'i str) -> ModalResult<&'i str> {
323
    ///     separated_pair(alpha1, ',', alpha1).take().parse_next(input)
324
    /// }
325
    ///
326
    /// assert_eq!(parser.parse_peek("abcd,efgh"), Ok(("", "abcd,efgh")));
327
    /// assert!(parser.parse_peek("abcd;").is_err());
328
    /// # }
329
    /// ```
330
    #[doc(alias = "concat")]
331
    #[doc(alias = "recognize")]
332
    #[inline(always)]
333
119M
    fn take(self) -> impls::Take<Self, I, O, E>
334
119M
    where
335
119M
        Self: core::marker::Sized,
336
119M
        I: Stream,
337
    {
338
119M
        impls::Take {
339
119M
            parser: self,
340
119M
            i: Default::default(),
341
119M
            o: Default::default(),
342
119M
            e: Default::default(),
343
119M
        }
344
119M
    }
<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, (&str, &str)>::{closure#0}, &[u8], &[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, gix_config::parse::nom::take_newlines1::{closure#0}, &[u8], (), (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::take
Line
Count
Source
333
63.0M
    fn take(self) -> impls::Take<Self, I, O, E>
334
63.0M
    where
335
63.0M
        Self: core::marker::Sized,
336
63.0M
        I: Stream,
337
    {
338
63.0M
        impls::Take {
339
63.0M
            parser: self,
340
63.0M
            i: Default::default(),
341
63.0M
            o: Default::default(),
342
63.0M
            e: Default::default(),
343
63.0M
        }
344
63.0M
    }
<winnow::combinator::impls::Verify<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::token::one_of<&[u8], gix_config::parse::nom::is_subsection_escapable_char, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0}, &[u8], u8, u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::take
Line
Count
Source
333
4.61M
    fn take(self) -> impls::Take<Self, I, O, E>
334
4.61M
    where
335
4.61M
        Self: core::marker::Sized,
336
4.61M
        I: Stream,
337
    {
338
4.61M
        impls::Take {
339
4.61M
            parser: self,
340
4.61M
            i: Default::default(),
341
4.61M
            o: Default::default(),
342
4.61M
            e: Default::default(),
343
4.61M
        }
344
4.61M
    }
<(winnow::combinator::impls::Verify<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::token::one_of<&[u8], gix_config::parse::nom::config_name::{closure#0}, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0}, &[u8], u8, u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::token::take_while<gix_config::parse::nom::config_name::{closure#1}, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0}) as winnow::parser::Parser<&[u8], (u8, &[u8]), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::take
Line
Count
Source
333
50.3M
    fn take(self) -> impls::Take<Self, I, O, E>
334
50.3M
    where
335
50.3M
        Self: core::marker::Sized,
336
50.3M
        I: Stream,
337
    {
338
50.3M
        impls::Take {
339
50.3M
            parser: self,
340
50.3M
            i: Default::default(),
341
50.3M
            o: Default::default(),
342
50.3M
            e: Default::default(),
343
50.3M
        }
344
50.3M
    }
Unexecuted instantiation: <(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>>::take
Unexecuted instantiation: <(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>>::take
<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>>::take
Line
Count
Source
333
1.70M
    fn take(self) -> impls::Take<Self, I, O, E>
334
1.70M
    where
335
1.70M
        Self: core::marker::Sized,
336
1.70M
        I: Stream,
337
    {
338
1.70M
        impls::Take {
339
1.70M
            parser: self,
340
1.70M
            i: Default::default(),
341
1.70M
            o: Default::default(),
342
1.70M
            e: Default::default(),
343
1.70M
        }
344
1.70M
    }
<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>>::take
Line
Count
Source
333
2.23k
    fn take(self) -> impls::Take<Self, I, O, E>
334
2.23k
    where
335
2.23k
        Self: core::marker::Sized,
336
2.23k
        I: Stream,
337
    {
338
2.23k
        impls::Take {
339
2.23k
            parser: self,
340
2.23k
            i: Default::default(),
341
2.23k
            o: Default::default(),
342
2.23k
            e: Default::default(),
343
2.23k
        }
344
2.23k
    }
Unexecuted instantiation: <(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>>::take
Unexecuted instantiation: <(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>>::take
Unexecuted instantiation: <(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>>::take
Unexecuted instantiation: <(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>>::take
345
346
    /// Produce the consumed input with the output
347
    ///
348
    /// Functions similarly to [take][Parser::take] except it
349
    /// returns the parser output as well.
350
    ///
351
    /// This can be useful especially in cases where the output is not the same type
352
    /// as the input, or the input is a user defined type.
353
    ///
354
    /// Returned tuple is of the format `(produced output, consumed input)`.
355
    ///
356
    /// # Example
357
    ///
358
    /// ```rust
359
    /// # use winnow::prelude::*;
360
    /// # use winnow::{error::ErrMode};
361
    /// use winnow::ascii::{alpha1};
362
    /// use winnow::token::literal;
363
    /// use winnow::combinator::separated_pair;
364
    ///
365
    /// fn parser<'i>(input: &mut &'i str) -> ModalResult<(bool, &'i str)> {
366
    ///     separated_pair(alpha1, ',', alpha1).value(true).with_taken().parse_next(input)
367
    /// }
368
    ///
369
    /// assert_eq!(parser.parse_peek("abcd,efgh1"), Ok(("1", (true, "abcd,efgh"))));
370
    /// assert!(parser.parse_peek("abcd;").is_err());
371
    /// ```
372
    #[doc(alias = "consumed")]
373
    #[doc(alias = "with_recognized")]
374
    #[inline(always)]
375
    fn with_taken(self) -> impls::WithTaken<Self, I, O, E>
376
    where
377
        Self: core::marker::Sized,
378
        I: Stream,
379
    {
380
        impls::WithTaken {
381
            parser: self,
382
            i: Default::default(),
383
            o: Default::default(),
384
            e: Default::default(),
385
        }
386
    }
387
388
    /// Produce the location of the consumed input as produced value.
389
    ///
390
    /// # Example
391
    ///
392
    /// ```rust
393
    /// # use winnow::prelude::*;
394
    /// # use winnow::{error::ErrMode, stream::Stream};
395
    /// # use std::ops::Range;
396
    /// use winnow::stream::LocatingSlice;
397
    /// use winnow::ascii::alpha1;
398
    /// use winnow::combinator::separated_pair;
399
    ///
400
    /// fn parser<'i>(input: &mut LocatingSlice<&'i str>) -> ModalResult<(Range<usize>, Range<usize>)> {
401
    ///     separated_pair(alpha1.span(), ',', alpha1.span()).parse_next(input)
402
    /// }
403
    ///
404
    /// assert_eq!(parser.parse(LocatingSlice::new("abcd,efgh")), Ok((0..4, 5..9)));
405
    /// assert!(parser.parse_peek(LocatingSlice::new("abcd;")).is_err());
406
    /// ```
407
    #[inline(always)]
408
    fn span(self) -> impls::Span<Self, I, O, E>
409
    where
410
        Self: core::marker::Sized,
411
        I: Stream + Location,
412
    {
413
        impls::Span {
414
            parser: self,
415
            i: Default::default(),
416
            o: Default::default(),
417
            e: Default::default(),
418
        }
419
    }
420
421
    /// Produce the location of consumed input with the output
422
    ///
423
    /// Functions similarly to [`Parser::span`] except it
424
    /// returns the parser output as well.
425
    ///
426
    /// This can be useful especially in cases where the output is not the same type
427
    /// as the input, or the input is a user defined type.
428
    ///
429
    /// Returned tuple is of the format `(produced output, consumed input)`.
430
    ///
431
    /// # Example
432
    ///
433
    /// ```rust
434
    /// # use winnow::prelude::*;
435
    /// # use winnow::{error::ErrMode, stream::Stream};
436
    /// # use std::ops::Range;
437
    /// use winnow::stream::LocatingSlice;
438
    /// use winnow::ascii::alpha1;
439
    /// use winnow::token::literal;
440
    /// use winnow::combinator::separated_pair;
441
    ///
442
    /// fn parser<'i>(input: &mut LocatingSlice<&'i str>) -> ModalResult<((usize, Range<usize>), (usize, Range<usize>))> {
443
    ///     separated_pair(alpha1.value(1).with_span(), ',', alpha1.value(2).with_span()).parse_next(input)
444
    /// }
445
    ///
446
    /// assert_eq!(parser.parse(LocatingSlice::new("abcd,efgh")), Ok(((1, 0..4), (2, 5..9))));
447
    /// assert!(parser.parse_peek(LocatingSlice::new("abcd;")).is_err());
448
    /// ```
449
    #[inline(always)]
450
    fn with_span(self) -> impls::WithSpan<Self, I, O, E>
451
    where
452
        Self: core::marker::Sized,
453
        I: Stream + Location,
454
    {
455
        impls::WithSpan {
456
            parser: self,
457
            i: Default::default(),
458
            o: Default::default(),
459
            e: Default::default(),
460
        }
461
    }
462
463
    /// Maps a function over the output of a parser
464
    ///
465
    /// # Example
466
    ///
467
    /// ```rust
468
    /// # use winnow::prelude::*;
469
    /// # use winnow::{error::ErrMode, Parser};
470
    /// # use winnow::ascii::digit1;
471
    /// # fn main() {
472
    ///
473
    /// fn parser<'i>(input: &mut &'i str) -> ModalResult<usize> {
474
    ///     digit1.map(|s: &str| s.len()).parse_next(input)
475
    /// }
476
    ///
477
    /// // the parser will count how many characters were returned by digit1
478
    /// assert_eq!(parser.parse_peek("123456"), Ok(("", 6)));
479
    ///
480
    /// // this will fail if digit1 fails
481
    /// assert!(parser.parse_peek("abc").is_err());
482
    /// # }
483
    /// ```
484
    #[inline(always)]
485
437M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
437M
    where
487
437M
        G: FnMut(O) -> O2,
488
437M
        Self: core::marker::Sized,
489
    {
490
437M
        impls::Map {
491
437M
            parser: self,
492
437M
            map,
493
437M
            i: Default::default(),
494
437M
            o: Default::default(),
495
437M
            o2: Default::default(),
496
437M
            e: Default::default(),
497
437M
        }
498
437M
    }
<winnow::combinator::impls::Take<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, (&str, &str)>::{closure#0}, &[u8], &[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, gix_config::parse::nom::take_newlines1::{closure#0}, &[u8], (), (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, &[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Line
Count
Source
485
63.0M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
63.0M
    where
487
63.0M
        G: FnMut(O) -> O2,
488
63.0M
        Self: core::marker::Sized,
489
    {
490
63.0M
        impls::Map {
491
63.0M
            parser: self,
492
63.0M
            map,
493
63.0M
            i: Default::default(),
494
63.0M
            o: Default::default(),
495
63.0M
            o2: Default::default(),
496
63.0M
            e: Default::default(),
497
63.0M
        }
498
63.0M
    }
<winnow::combinator::impls::Take<(winnow::combinator::impls::Verify<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::token::one_of<&[u8], gix_config::parse::nom::config_name::{closure#0}, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0}, &[u8], u8, u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::token::take_while<gix_config::parse::nom::config_name::{closure#1}, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8], (u8, &[u8]), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Line
Count
Source
485
50.3M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
50.3M
    where
487
50.3M
        G: FnMut(O) -> O2,
488
50.3M
        Self: core::marker::Sized,
489
    {
490
50.3M
        impls::Map {
491
50.3M
            parser: self,
492
50.3M
            map,
493
50.3M
            i: Default::default(),
494
50.3M
            o: Default::default(),
495
50.3M
            o2: Default::default(),
496
50.3M
            e: Default::default(),
497
50.3M
        }
498
50.3M
    }
<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, (&str, &str)>::{closure#0}, &[u8], &[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::map::<gix_config::parse::nom::take_newlines1::{closure#0}, ()>
Line
Count
Source
485
63.0M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
63.0M
    where
487
63.0M
        G: FnMut(O) -> O2,
488
63.0M
        Self: core::marker::Sized,
489
    {
490
63.0M
        impls::Map {
491
63.0M
            parser: self,
492
63.0M
            map,
493
63.0M
            i: Default::default(),
494
63.0M
            o: Default::default(),
495
63.0M
            o2: Default::default(),
496
63.0M
            e: Default::default(),
497
63.0M
        }
498
63.0M
    }
<winnow::combinator::multi::Repeat<gix_config::parse::nom::from_bytes::{closure#4}, &[u8], (), (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::map::<gix_config::parse::nom::from_bytes::{closure#5}, ()>
Line
Count
Source
485
13.6k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
13.6k
    where
487
13.6k
        G: FnMut(O) -> O2,
488
13.6k
        Self: core::marker::Sized,
489
    {
490
13.6k
        impls::Map {
491
13.6k
            parser: self,
492
13.6k
            map,
493
13.6k
            i: Default::default(),
494
13.6k
            o: Default::default(),
495
13.6k
            o2: Default::default(),
496
13.6k
            e: Default::default(),
497
13.6k
        }
498
13.6k
    }
<winnow::token::take_while<gix_config::parse::nom::is_section_char, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Line
Count
Source
485
14.8M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
14.8M
    where
487
14.8M
        G: FnMut(O) -> O2,
488
14.8M
        Self: core::marker::Sized,
489
    {
490
14.8M
        impls::Map {
491
14.8M
            parser: self,
492
14.8M
            map,
493
14.8M
            i: Default::default(),
494
14.8M
            o: Default::default(),
495
14.8M
            o2: Default::default(),
496
14.8M
            e: Default::default(),
497
14.8M
        }
498
14.8M
    }
<winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_space, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Line
Count
Source
485
80.7M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
80.7M
    where
487
80.7M
        G: FnMut(O) -> O2,
488
80.7M
        Self: core::marker::Sized,
489
    {
490
80.7M
        impls::Map {
491
80.7M
            parser: self,
492
80.7M
            map,
493
80.7M
            i: Default::default(),
494
80.7M
            o: Default::default(),
495
80.7M
            o2: Default::default(),
496
80.7M
            e: Default::default(),
497
80.7M
        }
498
80.7M
    }
<winnow::token::take_till<gix_config::parse::nom::comment::{closure#0}, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::map::<gix_config::parse::nom::comment::{closure#1}, alloc::borrow::Cow<bstr::bstr::BStr>>
Line
Count
Source
485
75.7M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
75.7M
    where
487
75.7M
        G: FnMut(O) -> O2,
488
75.7M
        Self: core::marker::Sized,
489
    {
490
75.7M
        impls::Map {
491
75.7M
            parser: self,
492
75.7M
            map,
493
75.7M
            i: Default::default(),
494
75.7M
            o: Default::default(),
495
75.7M
            o2: Default::default(),
496
75.7M
            e: Default::default(),
497
75.7M
        }
498
75.7M
    }
<gix_config::parse::nom::take_spaces1 as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::map::<gix_config::parse::nom::from_bytes::{closure#0}, gix_config::parse::Event>
Line
Count
Source
485
20.8k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
20.8k
    where
487
20.8k
        G: FnMut(O) -> O2,
488
20.8k
        Self: core::marker::Sized,
489
    {
490
20.8k
        impls::Map {
491
20.8k
            parser: self,
492
20.8k
            map,
493
20.8k
            i: Default::default(),
494
20.8k
            o: Default::default(),
495
20.8k
            o2: Default::default(),
496
20.8k
            e: Default::default(),
497
20.8k
        }
498
20.8k
    }
<gix_config::parse::nom::comment as winnow::parser::Parser<&[u8], gix_config::parse::Comment, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::map::<gix_config::parse::Event::Comment, gix_config::parse::Event>
Line
Count
Source
485
20.8k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
20.8k
    where
487
20.8k
        G: FnMut(O) -> O2,
488
20.8k
        Self: core::marker::Sized,
489
    {
490
20.8k
        impls::Map {
491
20.8k
            parser: self,
492
20.8k
            map,
493
20.8k
            i: Default::default(),
494
20.8k
            o: Default::default(),
495
20.8k
            o2: Default::default(),
496
20.8k
            e: Default::default(),
497
20.8k
        }
498
20.8k
    }
<(winnow::combinator::impls::Verify<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::token::one_of<&[u8], [char; 2], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0}, &[u8], u8, u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::combinator::impls::Map<winnow::token::take_till<gix_config::parse::nom::comment::{closure#0}, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_config::parse::nom::comment::{closure#1}, &[u8], &[u8], alloc::borrow::Cow<bstr::bstr::BStr>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>) as winnow::parser::Parser<&[u8], (u8, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::map::<gix_config::parse::nom::comment::{closure#2}, gix_config::parse::Comment>
Line
Count
Source
485
75.7M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
75.7M
    where
487
75.7M
        G: FnMut(O) -> O2,
488
75.7M
        Self: core::marker::Sized,
489
    {
490
75.7M
        impls::Map {
491
75.7M
            parser: self,
492
75.7M
            map,
493
75.7M
            i: Default::default(),
494
75.7M
            o: Default::default(),
495
75.7M
            o2: Default::default(),
496
75.7M
            e: Default::default(),
497
75.7M
        }
498
75.7M
    }
<(gix_config::parse::nom::take_spaces1, winnow::combinator::sequence::delimited<&[u8], char, core::option::Option<alloc::borrow::Cow<bstr::bstr::BStr>>, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, char, winnow::combinator::core::opt<&[u8], alloc::borrow::Cow<bstr::bstr::BStr>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, gix_config::parse::nom::sub_section>::{closure#0}, &str>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<alloc::borrow::Cow<bstr::bstr::BStr>>), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::map::<gix_config::parse::nom::section_header::{closure#2}, gix_config::parse::section::Header>
Line
Count
Source
485
700k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
700k
    where
487
700k
        G: FnMut(O) -> O2,
488
700k
        Self: core::marker::Sized,
489
    {
490
700k
        impls::Map {
491
700k
            parser: self,
492
700k
            map,
493
700k
            i: Default::default(),
494
700k
            o: Default::default(),
495
700k
            o2: Default::default(),
496
700k
            e: Default::default(),
497
700k
        }
498
700k
    }
Unexecuted instantiation: <winnow::combinator::impls::Context<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#3}, gix_actor::SignatureRef>
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Unexecuted instantiation: <winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8]>
Unexecuted instantiation: <winnow::token::take_while<gix_ref::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Unexecuted instantiation: <winnow::token::take_while<gix_ref::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&[u8],)>, winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#2}, &str>
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_while<gix_ref::store_impl::packed::decode::until_newline<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_ref::parse::newline<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::ContextError>, winnow::token::take_while<gix_ref::store_impl::file::loose::reference::decode::parse::{closure#0}, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::newline<winnow::error::ContextError>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::map::<gix_ref::store_impl::file::loose::reference::decode::parse::{closure#1}, gix_ref::store_impl::file::loose::reference::decode::MaybeUnsafeState>
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], core::option::Option<u8>, winnow::error::ErrMode<()>, winnow::token::take_while<gix_ref::store_impl::file::log::line::decode::message<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::core::opt<&[u8], u8, winnow::error::ErrMode<()>, u8>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::hex_hash<winnow::error::ContextError>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::newline<winnow::error::ContextError>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::ContextError>>>::map::<gix_ref::store_impl::file::loose::reference::decode::parse::{closure#2}, gix_ref::store_impl::file::loose::reference::decode::MaybeUnsafeState>
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8; 18], gix_ref::store_impl::packed::decode::until_newline<()>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::map::<gix_ref::store_impl::packed::decode::header<()>::{closure#0}, gix_ref::store_impl::packed::decode::Header>
Unexecuted instantiation: <(winnow::combinator::impls::Context<(winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_actor::signature::decode::function::decode<()>, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>), &[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::branch::alt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, (winnow::combinator::sequence::preceded<&[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>, u8, winnow::combinator::impls::Context<gix_ref::store_impl::file::log::line::decode::message<()>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>>::{closure#0}, winnow::combinator::impls::Value<u8, &[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>>, winnow::combinator::impls::Value<winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, winnow::combinator::impls::Context<winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>)>::{closure#0}) as winnow::parser::Parser<&[u8], ((&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::map::<gix_ref::store_impl::file::log::line::decode::one<()>::{closure#1}, gix_ref::store_impl::file::log::LineRef>
Unexecuted instantiation: <(winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::TryMap<gix_ref::store_impl::packed::decode::until_newline<()>, <&bstr::bstr::BStr as core::convert::TryInto<&gix_ref::FullNameRef>>::try_into, &[u8], &bstr::bstr::BStr, &gix_ref::FullNameRef, winnow::error::ErrMode<()>, gix_validate::reference::name::Error>, winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::delimited<&[u8], &[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, &[u8; 1], gix_ref::parse::hex_hash<()>, gix_ref::parse::newline<()>>::{closure#0}>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &gix_ref::FullNameRef, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::map::<gix_ref::store_impl::packed::decode::reference<()>::{closure#0}, gix_ref::store_impl::packed::Reference>
Unexecuted instantiation: <winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::parse::any_header_field_multi_line<()>::{closure#1}, bstr::bstring::BString>
Unexecuted instantiation: <winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#2}, core::option::Option<&bstr::bstr::BStr>>
Unexecuted instantiation: <winnow::combinator::impls::Context<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#3}, gix_actor::SignatureRef>
Unexecuted instantiation: <winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<()>>>::map::<gix_object::parse::any_header_field_multi_line<()>::{closure#0}, ()>
Unexecuted instantiation: <winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::map::<gix_object::commit::decode::commit<()>::{closure#2}, alloc::vec::Vec<&bstr::bstr::BStr>>
Unexecuted instantiation: <gix_object::parse::any_header_field_multi_line<()> as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::map::<gix_object::commit::decode::commit<()>::{closure#6}, (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#3}, (&[u8], core::option::Option<&bstr::bstr::BStr>)>
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::commit::message::decode::subject_and_body<()>::{closure#2}, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)>
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Unexecuted instantiation: <winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8]>
Unexecuted instantiation: <winnow::token::take_while<gix_object::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&[u8],)>, winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#2}, &str>
Unexecuted instantiation: <winnow::combinator::sequence::delimited<&[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), core::option::Option<&[u8]>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::branch::alt<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>, ((winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}), winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#3}, &[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>)>::{closure#0}, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8]>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#4}, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)>
Unexecuted instantiation: <&[u8] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#1}, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)>
Unexecuted instantiation: <(winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>>, &[u8], gix_object::Kind, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::tag::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, gix_object::Kind, &[u8], core::option::Option<gix_actor::SignatureRef>, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)), winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::git_tag<()>::{closure#5}, gix_object::TagRef>
Unexecuted instantiation: <(winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#3}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#4}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, gix_actor::SignatureRef, gix_actor::SignatureRef, core::option::Option<&[u8]>, alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::map::<gix_object::commit::decode::commit<()>::{closure#8}, gix_object::CommitRef>
<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::parse::any_header_field_multi_line<()>::{closure#1}, bstr::bstring::BString>
Line
Count
Source
485
1.70M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
1.70M
    where
487
1.70M
        G: FnMut(O) -> O2,
488
1.70M
        Self: core::marker::Sized,
489
    {
490
1.70M
        impls::Map {
491
1.70M
            parser: self,
492
1.70M
            map,
493
1.70M
            i: Default::default(),
494
1.70M
            o: Default::default(),
495
1.70M
            o2: Default::default(),
496
1.70M
            e: Default::default(),
497
1.70M
        }
498
1.70M
    }
<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#2}, core::option::Option<&bstr::bstr::BStr>>
Line
Count
Source
485
2.23k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
2.23k
    where
487
2.23k
        G: FnMut(O) -> O2,
488
2.23k
        Self: core::marker::Sized,
489
    {
490
2.23k
        impls::Map {
491
2.23k
            parser: self,
492
2.23k
            map,
493
2.23k
            i: Default::default(),
494
2.23k
            o: Default::default(),
495
2.23k
            o2: Default::default(),
496
2.23k
            e: Default::default(),
497
2.23k
        }
498
2.23k
    }
<winnow::combinator::impls::Context<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#3}, gix_actor::SignatureRef>
Line
Count
Source
485
6.76k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
6.76k
    where
487
6.76k
        G: FnMut(O) -> O2,
488
6.76k
        Self: core::marker::Sized,
489
    {
490
6.76k
        impls::Map {
491
6.76k
            parser: self,
492
6.76k
            map,
493
6.76k
            i: Default::default(),
494
6.76k
            o: Default::default(),
495
6.76k
            o2: Default::default(),
496
6.76k
            e: Default::default(),
497
6.76k
        }
498
6.76k
    }
<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<()>>>::map::<gix_object::parse::any_header_field_multi_line<()>::{closure#0}, ()>
Line
Count
Source
485
1.70M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
1.70M
    where
487
1.70M
        G: FnMut(O) -> O2,
488
1.70M
        Self: core::marker::Sized,
489
    {
490
1.70M
        impls::Map {
491
1.70M
            parser: self,
492
1.70M
            map,
493
1.70M
            i: Default::default(),
494
1.70M
            o: Default::default(),
495
1.70M
            o2: Default::default(),
496
1.70M
            e: Default::default(),
497
1.70M
        }
498
1.70M
    }
<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::map::<gix_object::commit::decode::commit<()>::{closure#2}, alloc::vec::Vec<&bstr::bstr::BStr>>
Line
Count
Source
485
2.00k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
2.00k
    where
487
2.00k
        G: FnMut(O) -> O2,
488
2.00k
        Self: core::marker::Sized,
489
    {
490
2.00k
        impls::Map {
491
2.00k
            parser: self,
492
2.00k
            map,
493
2.00k
            i: Default::default(),
494
2.00k
            o: Default::default(),
495
2.00k
            o2: Default::default(),
496
2.00k
            e: Default::default(),
497
2.00k
        }
498
2.00k
    }
<gix_object::parse::any_header_field_multi_line<()> as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::map::<gix_object::commit::decode::commit<()>::{closure#6}, (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>
Line
Count
Source
485
2.00k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
2.00k
    where
487
2.00k
        G: FnMut(O) -> O2,
488
2.00k
        Self: core::marker::Sized,
489
    {
490
2.00k
        impls::Map {
491
2.00k
            parser: self,
492
2.00k
            map,
493
2.00k
            i: Default::default(),
494
2.00k
            o: Default::default(),
495
2.00k
            o2: Default::default(),
496
2.00k
            e: Default::default(),
497
2.00k
        }
498
2.00k
    }
<winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#3}, (&[u8], core::option::Option<&bstr::bstr::BStr>)>
Line
Count
Source
485
2.23k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
2.23k
    where
487
2.23k
        G: FnMut(O) -> O2,
488
2.23k
        Self: core::marker::Sized,
489
    {
490
2.23k
        impls::Map {
491
2.23k
            parser: self,
492
2.23k
            map,
493
2.23k
            i: Default::default(),
494
2.23k
            o: Default::default(),
495
2.23k
            o2: Default::default(),
496
2.23k
            e: Default::default(),
497
2.23k
        }
498
2.23k
    }
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::commit::message::decode::subject_and_body<()>::{closure#2}, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)>
<winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Line
Count
Source
485
834
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
834
    where
487
834
        G: FnMut(O) -> O2,
488
834
        Self: core::marker::Sized,
489
    {
490
834
        impls::Map {
491
834
            parser: self,
492
834
            map,
493
834
            i: Default::default(),
494
834
            o: Default::default(),
495
834
            o2: Default::default(),
496
834
            e: Default::default(),
497
834
        }
498
834
    }
<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8]>
Line
Count
Source
485
6.76k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
6.76k
    where
487
6.76k
        G: FnMut(O) -> O2,
488
6.76k
        Self: core::marker::Sized,
489
    {
490
6.76k
        impls::Map {
491
6.76k
            parser: self,
492
6.76k
            map,
493
6.76k
            i: Default::default(),
494
6.76k
            o: Default::default(),
495
6.76k
            o2: Default::default(),
496
6.76k
            e: Default::default(),
497
6.76k
        }
498
6.76k
    }
<winnow::token::take_while<gix_object::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Line
Count
Source
485
13.4k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
13.4k
    where
487
13.4k
        G: FnMut(O) -> O2,
488
13.4k
        Self: core::marker::Sized,
489
    {
490
13.4k
        impls::Map {
491
13.4k
            parser: self,
492
13.4k
            map,
493
13.4k
            i: Default::default(),
494
13.4k
            o: Default::default(),
495
13.4k
            o2: Default::default(),
496
13.4k
            e: Default::default(),
497
13.4k
        }
498
13.4k
    }
<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&[u8],)>, winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#2}, &str>
Line
Count
Source
485
6.76k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
6.76k
    where
487
6.76k
        G: FnMut(O) -> O2,
488
6.76k
        Self: core::marker::Sized,
489
    {
490
6.76k
        impls::Map {
491
6.76k
            parser: self,
492
6.76k
            map,
493
6.76k
            i: Default::default(),
494
6.76k
            o: Default::default(),
495
6.76k
            o2: Default::default(),
496
6.76k
            e: Default::default(),
497
6.76k
        }
498
6.76k
    }
<winnow::combinator::sequence::delimited<&[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), core::option::Option<&[u8]>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::branch::alt<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>, ((winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}), winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#3}, &[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>)>::{closure#0}, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8]>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#4}, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)>
Line
Count
Source
485
2.23k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
2.23k
    where
487
2.23k
        G: FnMut(O) -> O2,
488
2.23k
        Self: core::marker::Sized,
489
    {
490
2.23k
        impls::Map {
491
2.23k
            parser: self,
492
2.23k
            map,
493
2.23k
            i: Default::default(),
494
2.23k
            o: Default::default(),
495
2.23k
            o2: Default::default(),
496
2.23k
            e: Default::default(),
497
2.23k
        }
498
2.23k
    }
<&[u8] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#1}, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)>
Line
Count
Source
485
51
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
51
    where
487
51
        G: FnMut(O) -> O2,
488
51
        Self: core::marker::Sized,
489
    {
490
51
        impls::Map {
491
51
            parser: self,
492
51
            map,
493
51
            i: Default::default(),
494
51
            o: Default::default(),
495
51
            o2: Default::default(),
496
51
            e: Default::default(),
497
51
        }
498
51
    }
<(winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>>, &[u8], gix_object::Kind, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::tag::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, gix_object::Kind, &[u8], core::option::Option<gix_actor::SignatureRef>, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)), winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::git_tag<()>::{closure#5}, gix_object::TagRef>
Line
Count
Source
485
1.96k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
1.96k
    where
487
1.96k
        G: FnMut(O) -> O2,
488
1.96k
        Self: core::marker::Sized,
489
    {
490
1.96k
        impls::Map {
491
1.96k
            parser: self,
492
1.96k
            map,
493
1.96k
            i: Default::default(),
494
1.96k
            o: Default::default(),
495
1.96k
            o2: Default::default(),
496
1.96k
            e: Default::default(),
497
1.96k
        }
498
1.96k
    }
<(winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#3}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#4}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, gix_actor::SignatureRef, gix_actor::SignatureRef, core::option::Option<&[u8]>, alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::map::<gix_object::commit::decode::commit<()>::{closure#8}, gix_object::CommitRef>
Line
Count
Source
485
2.00k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
2.00k
    where
487
2.00k
        G: FnMut(O) -> O2,
488
2.00k
        Self: core::marker::Sized,
489
    {
490
2.00k
        impls::Map {
491
2.00k
            parser: self,
492
2.00k
            map,
493
2.00k
            i: Default::default(),
494
2.00k
            o: Default::default(),
495
2.00k
            o2: Default::default(),
496
2.00k
            e: Default::default(),
497
2.00k
        }
498
2.00k
    }
<winnow::combinator::impls::Context<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#3}, gix_actor::SignatureRef>
Line
Count
Source
485
71.4k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
71.4k
    where
487
71.4k
        G: FnMut(O) -> O2,
488
71.4k
        Self: core::marker::Sized,
489
    {
490
71.4k
        impls::Map {
491
71.4k
            parser: self,
492
71.4k
            map,
493
71.4k
            i: Default::default(),
494
71.4k
            o: Default::default(),
495
71.4k
            o2: Default::default(),
496
71.4k
            e: Default::default(),
497
71.4k
        }
498
71.4k
    }
<winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Line
Count
Source
485
4.19k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
4.19k
    where
487
4.19k
        G: FnMut(O) -> O2,
488
4.19k
        Self: core::marker::Sized,
489
    {
490
4.19k
        impls::Map {
491
4.19k
            parser: self,
492
4.19k
            map,
493
4.19k
            i: Default::default(),
494
4.19k
            o: Default::default(),
495
4.19k
            o2: Default::default(),
496
4.19k
            e: Default::default(),
497
4.19k
        }
498
4.19k
    }
<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8]>
Line
Count
Source
485
71.4k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
71.4k
    where
487
71.4k
        G: FnMut(O) -> O2,
488
71.4k
        Self: core::marker::Sized,
489
    {
490
71.4k
        impls::Map {
491
71.4k
            parser: self,
492
71.4k
            map,
493
71.4k
            i: Default::default(),
494
71.4k
            o: Default::default(),
495
71.4k
            o2: Default::default(),
496
71.4k
            e: Default::default(),
497
71.4k
        }
498
71.4k
    }
Unexecuted instantiation: <winnow::token::take_while<gix_ref::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
<winnow::token::take_while<gix_ref::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Line
Count
Source
485
4.09M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
4.09M
    where
487
4.09M
        G: FnMut(O) -> O2,
488
4.09M
        Self: core::marker::Sized,
489
    {
490
4.09M
        impls::Map {
491
4.09M
            parser: self,
492
4.09M
            map,
493
4.09M
            i: Default::default(),
494
4.09M
            o: Default::default(),
495
4.09M
            o2: Default::default(),
496
4.09M
            e: Default::default(),
497
4.09M
        }
498
4.09M
    }
<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&[u8],)>, winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#2}, &str>
Line
Count
Source
485
71.4k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
71.4k
    where
487
71.4k
        G: FnMut(O) -> O2,
488
71.4k
        Self: core::marker::Sized,
489
    {
490
71.4k
        impls::Map {
491
71.4k
            parser: self,
492
71.4k
            map,
493
71.4k
            i: Default::default(),
494
71.4k
            o: Default::default(),
495
71.4k
            o2: Default::default(),
496
71.4k
            e: Default::default(),
497
71.4k
        }
498
71.4k
    }
<winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_while<gix_ref::store_impl::packed::decode::until_newline<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_ref::parse::newline<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Line
Count
Source
485
1.42M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
1.42M
    where
487
1.42M
        G: FnMut(O) -> O2,
488
1.42M
        Self: core::marker::Sized,
489
    {
490
1.42M
        impls::Map {
491
1.42M
            parser: self,
492
1.42M
            map,
493
1.42M
            i: Default::default(),
494
1.42M
            o: Default::default(),
495
1.42M
            o2: Default::default(),
496
1.42M
            e: Default::default(),
497
1.42M
        }
498
1.42M
    }
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::ContextError>, winnow::token::take_while<gix_ref::store_impl::file::loose::reference::decode::parse::{closure#0}, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::newline<winnow::error::ContextError>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::map::<gix_ref::store_impl::file::loose::reference::decode::parse::{closure#1}, gix_ref::store_impl::file::loose::reference::decode::MaybeUnsafeState>
<winnow::combinator::sequence::terminated<&[u8], &[u8], core::option::Option<u8>, winnow::error::ErrMode<()>, winnow::token::take_while<gix_ref::store_impl::file::log::line::decode::message<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::core::opt<&[u8], u8, winnow::error::ErrMode<()>, u8>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Line
Count
Source
485
19.2k
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
19.2k
    where
487
19.2k
        G: FnMut(O) -> O2,
488
19.2k
        Self: core::marker::Sized,
489
    {
490
19.2k
        impls::Map {
491
19.2k
            parser: self,
492
19.2k
            map,
493
19.2k
            i: Default::default(),
494
19.2k
            o: Default::default(),
495
19.2k
            o2: Default::default(),
496
19.2k
            e: Default::default(),
497
19.2k
        }
498
19.2k
    }
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::hex_hash<winnow::error::ContextError>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::newline<winnow::error::ContextError>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::ContextError>>>::map::<gix_ref::store_impl::file::loose::reference::decode::parse::{closure#2}, gix_ref::store_impl::file::loose::reference::decode::MaybeUnsafeState>
<winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8; 18], gix_ref::store_impl::packed::decode::until_newline<()>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::map::<gix_ref::store_impl::packed::decode::header<()>::{closure#0}, gix_ref::store_impl::packed::decode::Header>
Line
Count
Source
485
18
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
18
    where
487
18
        G: FnMut(O) -> O2,
488
18
        Self: core::marker::Sized,
489
    {
490
18
        impls::Map {
491
18
            parser: self,
492
18
            map,
493
18
            i: Default::default(),
494
18
            o: Default::default(),
495
18
            o2: Default::default(),
496
18
            e: Default::default(),
497
18
        }
498
18
    }
<(winnow::combinator::impls::Context<(winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_actor::signature::decode::function::decode<()>, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>), &[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::branch::alt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, (winnow::combinator::sequence::preceded<&[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>, u8, winnow::combinator::impls::Context<gix_ref::store_impl::file::log::line::decode::message<()>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>>::{closure#0}, winnow::combinator::impls::Value<u8, &[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>>, winnow::combinator::impls::Value<winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, winnow::combinator::impls::Context<winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>)>::{closure#0}) as winnow::parser::Parser<&[u8], ((&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::map::<gix_ref::store_impl::file::log::line::decode::one<()>::{closure#1}, gix_ref::store_impl::file::log::LineRef>
Line
Count
Source
485
2.51M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
2.51M
    where
487
2.51M
        G: FnMut(O) -> O2,
488
2.51M
        Self: core::marker::Sized,
489
    {
490
2.51M
        impls::Map {
491
2.51M
            parser: self,
492
2.51M
            map,
493
2.51M
            i: Default::default(),
494
2.51M
            o: Default::default(),
495
2.51M
            o2: Default::default(),
496
2.51M
            e: Default::default(),
497
2.51M
        }
498
2.51M
    }
<(winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::TryMap<gix_ref::store_impl::packed::decode::until_newline<()>, <&bstr::bstr::BStr as core::convert::TryInto<&gix_ref::FullNameRef>>::try_into, &[u8], &bstr::bstr::BStr, &gix_ref::FullNameRef, winnow::error::ErrMode<()>, gix_validate::reference::name::Error>, winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::delimited<&[u8], &[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, &[u8; 1], gix_ref::parse::hex_hash<()>, gix_ref::parse::newline<()>>::{closure#0}>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &gix_ref::FullNameRef, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::map::<gix_ref::store_impl::packed::decode::reference<()>::{closure#0}, gix_ref::store_impl::packed::Reference>
Line
Count
Source
485
1.42M
    fn map<G, O2>(self, map: G) -> impls::Map<Self, G, I, O, O2, E>
486
1.42M
    where
487
1.42M
        G: FnMut(O) -> O2,
488
1.42M
        Self: core::marker::Sized,
489
    {
490
1.42M
        impls::Map {
491
1.42M
            parser: self,
492
1.42M
            map,
493
1.42M
            i: Default::default(),
494
1.42M
            o: Default::default(),
495
1.42M
            o2: Default::default(),
496
1.42M
            e: Default::default(),
497
1.42M
        }
498
1.42M
    }
Unexecuted instantiation: <winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::parse::any_header_field_multi_line<()>::{closure#1}, bstr::bstring::BString>
Unexecuted instantiation: <winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#2}, core::option::Option<&bstr::bstr::BStr>>
Unexecuted instantiation: <winnow::combinator::impls::Context<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#3}, gix_actor::SignatureRef>
Unexecuted instantiation: <winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<()>>>::map::<gix_object::parse::any_header_field_multi_line<()>::{closure#0}, ()>
Unexecuted instantiation: <winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::map::<gix_object::commit::decode::commit<()>::{closure#2}, alloc::vec::Vec<&bstr::bstr::BStr>>
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#3}, (&[u8], core::option::Option<&bstr::bstr::BStr>)>
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::commit::message::decode::subject_and_body<()>::{closure#2}, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)>
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Unexecuted instantiation: <gix_object::parse::any_header_field_multi_line<()> as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::map::<gix_object::commit::decode::commit<()>::{closure#6}, (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>
Unexecuted instantiation: <winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8]>
Unexecuted instantiation: <winnow::token::take_while<gix_object::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&[u8],)>, winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#2}, &str>
Unexecuted instantiation: <winnow::combinator::sequence::delimited<&[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), core::option::Option<&[u8]>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::branch::alt<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>, ((winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}), winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#3}, &[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>)>::{closure#0}, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8]>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#4}, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)>
Unexecuted instantiation: <&[u8] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#1}, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)>
Unexecuted instantiation: <(winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>>, &[u8], gix_object::Kind, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::tag::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, gix_object::Kind, &[u8], core::option::Option<gix_actor::SignatureRef>, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)), winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::git_tag<()>::{closure#5}, gix_object::TagRef>
Unexecuted instantiation: <(winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#3}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#4}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, gix_actor::SignatureRef, gix_actor::SignatureRef, core::option::Option<&[u8]>, alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::map::<gix_object::commit::decode::commit<()>::{closure#8}, gix_object::CommitRef>
Unexecuted instantiation: <winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::parse::any_header_field_multi_line<()>::{closure#1}, bstr::bstring::BString>
Unexecuted instantiation: <winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#2}, core::option::Option<&bstr::bstr::BStr>>
Unexecuted instantiation: <winnow::combinator::impls::Context<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#3}, gix_actor::SignatureRef>
Unexecuted instantiation: <winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<()>>>::map::<gix_object::parse::any_header_field_multi_line<()>::{closure#0}, ()>
Unexecuted instantiation: <winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::map::<gix_object::commit::decode::commit<()>::{closure#2}, alloc::vec::Vec<&bstr::bstr::BStr>>
Unexecuted instantiation: <gix_object::parse::any_header_field_multi_line<()> as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::map::<gix_object::commit::decode::commit<()>::{closure#6}, (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#3}, (&[u8], core::option::Option<&bstr::bstr::BStr>)>
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::commit::message::decode::subject_and_body<()>::{closure#2}, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)>
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Unexecuted instantiation: <winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8]>
Unexecuted instantiation: <winnow::token::take_while<gix_object::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<<[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &bstr::bstr::BStr>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&[u8],)>, winnow::error::ErrMode<()>>>::map::<gix_actor::signature::decode::function::decode<()>::{closure#2}, &str>
Unexecuted instantiation: <winnow::combinator::sequence::delimited<&[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), core::option::Option<&[u8]>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::branch::alt<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>, ((winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}), winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#3}, &[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>)>::{closure#0}, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8]>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#4}, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)>
Unexecuted instantiation: <&[u8] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::message<()>::{closure#1}, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)>
Unexecuted instantiation: <(winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>>, &[u8], gix_object::Kind, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::tag::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, gix_object::Kind, &[u8], core::option::Option<gix_actor::SignatureRef>, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)), winnow::error::ErrMode<()>>>::map::<gix_object::tag::decode::git_tag<()>::{closure#5}, gix_object::TagRef>
Unexecuted instantiation: <(winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#3}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#4}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, gix_actor::SignatureRef, gix_actor::SignatureRef, core::option::Option<&[u8]>, alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::map::<gix_object::commit::decode::commit<()>::{closure#8}, gix_object::CommitRef>
499
500
    /// Applies a function returning a `Result` over the output of a parser.
501
    ///
502
    /// # Example
503
    ///
504
    /// ```rust
505
    /// # use winnow::{error::ErrMode, Parser};
506
    /// # use winnow::prelude::*;
507
    /// use winnow::ascii::digit1;
508
    /// # fn main() {
509
    ///
510
    /// fn parser<'i>(input: &mut &'i str) -> ModalResult<u8> {
511
    ///     digit1.try_map(|s: &str| s.parse::<u8>()).parse_next(input)
512
    /// }
513
    ///
514
    /// // the parser will convert the result of digit1 to a number
515
    /// assert_eq!(parser.parse_peek("123"), Ok(("", 123)));
516
    ///
517
    /// // this will fail if digit1 fails
518
    /// assert!(parser.parse_peek("abc").is_err());
519
    ///
520
    /// // this will fail if the mapped function fails (a `u8` is too small to hold `123456`)
521
    /// assert!(parser.parse_peek("123456").is_err());
522
    /// # }
523
    /// ```
524
    #[inline(always)]
525
1.42M
    fn try_map<G, O2, E2>(self, map: G) -> impls::TryMap<Self, G, I, O, O2, E, E2>
526
1.42M
    where
527
1.42M
        Self: core::marker::Sized,
528
1.42M
        G: FnMut(O) -> Result<O2, E2>,
529
1.42M
        I: Stream,
530
1.42M
        E: FromExternalError<I, E2>,
531
1.42M
        E: ParserError<I>,
532
    {
533
1.42M
        impls::TryMap {
534
1.42M
            parser: self,
535
1.42M
            map,
536
1.42M
            i: Default::default(),
537
1.42M
            o: Default::default(),
538
1.42M
            o2: Default::default(),
539
1.42M
            e: Default::default(),
540
1.42M
            e2: Default::default(),
541
1.42M
        }
542
1.42M
    }
Unexecuted instantiation: <gix_ref::store_impl::packed::decode::until_newline<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::try_map::<<&bstr::bstr::BStr as core::convert::TryInto<&gix_ref::FullNameRef>>::try_into, &gix_ref::FullNameRef, gix_validate::reference::name::Error>
<gix_ref::store_impl::packed::decode::until_newline<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::try_map::<<&bstr::bstr::BStr as core::convert::TryInto<&gix_ref::FullNameRef>>::try_into, &gix_ref::FullNameRef, gix_validate::reference::name::Error>
Line
Count
Source
525
1.42M
    fn try_map<G, O2, E2>(self, map: G) -> impls::TryMap<Self, G, I, O, O2, E, E2>
526
1.42M
    where
527
1.42M
        Self: core::marker::Sized,
528
1.42M
        G: FnMut(O) -> Result<O2, E2>,
529
1.42M
        I: Stream,
530
1.42M
        E: FromExternalError<I, E2>,
531
1.42M
        E: ParserError<I>,
532
    {
533
1.42M
        impls::TryMap {
534
1.42M
            parser: self,
535
1.42M
            map,
536
1.42M
            i: Default::default(),
537
1.42M
            o: Default::default(),
538
1.42M
            o2: Default::default(),
539
1.42M
            e: Default::default(),
540
1.42M
            e2: Default::default(),
541
1.42M
        }
542
1.42M
    }
543
544
    /// Apply both [`Parser::verify`] and [`Parser::map`].
545
    ///
546
    /// # Example
547
    ///
548
    /// ```rust
549
    /// # use winnow::{error::ErrMode, Parser};
550
    /// # use winnow::prelude::*;
551
    /// use winnow::ascii::digit1;
552
    /// # fn main() {
553
    ///
554
    /// fn parser<'i>(input: &mut &'i str) -> ModalResult<u8> {
555
    ///     digit1.verify_map(|s: &str| s.parse::<u8>().ok()).parse_next(input)
556
    /// }
557
    ///
558
    /// // the parser will convert the result of digit1 to a number
559
    /// assert_eq!(parser.parse_peek("123"), Ok(("", 123)));
560
    ///
561
    /// // this will fail if digit1 fails
562
    /// assert!(parser.parse_peek("abc").is_err());
563
    ///
564
    /// // this will fail if the mapped function fails (a `u8` is too small to hold `123456`)
565
    /// assert!(parser.parse_peek("123456").is_err());
566
    /// # }
567
    /// ```
568
    #[doc(alias = "satisfy_map")]
569
    #[doc(alias = "filter_map")]
570
    #[doc(alias = "map_opt")]
571
    #[inline(always)]
572
1.96k
    fn verify_map<G, O2>(self, map: G) -> impls::VerifyMap<Self, G, I, O, O2, E>
573
1.96k
    where
574
1.96k
        Self: core::marker::Sized,
575
1.96k
        G: FnMut(O) -> Option<O2>,
576
1.96k
        I: Stream,
577
1.96k
        E: ParserError<I>,
578
    {
579
1.96k
        impls::VerifyMap {
580
1.96k
            parser: self,
581
1.96k
            map,
582
1.96k
            i: Default::default(),
583
1.96k
            o: Default::default(),
584
1.96k
            o2: Default::default(),
585
1.96k
            e: Default::default(),
586
1.96k
        }
587
1.96k
    }
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::verify_map::<gix_object::tag::decode::git_tag<()>::{closure#2}, gix_object::Kind>
<gix_object::tag::decode::git_tag<()>::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::verify_map::<gix_object::tag::decode::git_tag<()>::{closure#2}, gix_object::Kind>
Line
Count
Source
572
1.96k
    fn verify_map<G, O2>(self, map: G) -> impls::VerifyMap<Self, G, I, O, O2, E>
573
1.96k
    where
574
1.96k
        Self: core::marker::Sized,
575
1.96k
        G: FnMut(O) -> Option<O2>,
576
1.96k
        I: Stream,
577
1.96k
        E: ParserError<I>,
578
    {
579
1.96k
        impls::VerifyMap {
580
1.96k
            parser: self,
581
1.96k
            map,
582
1.96k
            i: Default::default(),
583
1.96k
            o: Default::default(),
584
1.96k
            o2: Default::default(),
585
1.96k
            e: Default::default(),
586
1.96k
        }
587
1.96k
    }
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::verify_map::<gix_object::tag::decode::git_tag<()>::{closure#2}, gix_object::Kind>
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::verify_map::<gix_object::tag::decode::git_tag<()>::{closure#2}, gix_object::Kind>
588
589
    /// Creates a parser from the output of this one
590
    ///
591
    /// # Example
592
    ///
593
    /// ```rust
594
    /// # use winnow::{error::ErrMode, ModalResult, Parser};
595
    /// use winnow::token::take;
596
    /// use winnow::binary::u8;
597
    ///
598
    /// fn length_take<'s>(input: &mut &'s [u8]) -> ModalResult<&'s [u8]> {
599
    ///     u8.flat_map(take).parse_next(input)
600
    /// }
601
    ///
602
    /// assert_eq!(length_take.parse_peek(&[2, 0, 1, 2][..]), Ok((&[2][..], &[0, 1][..])));
603
    /// assert!(length_take.parse_peek(&[4, 0, 1, 2][..]).is_err());
604
    /// ```
605
    ///
606
    /// which is the same as
607
    /// ```rust
608
    /// # use winnow::{error::ErrMode, ModalResult, Parser};
609
    /// use winnow::token::take;
610
    /// use winnow::binary::u8;
611
    ///
612
    /// fn length_take<'s>(input: &mut &'s [u8]) -> ModalResult<&'s [u8]> {
613
    ///     let length = u8.parse_next(input)?;
614
    ///     let data = take(length).parse_next(input)?;
615
    ///     Ok(data)
616
    /// }
617
    ///
618
    /// assert_eq!(length_take.parse_peek(&[2, 0, 1, 2][..]), Ok((&[2][..], &[0, 1][..])));
619
    /// assert!(length_take.parse_peek(&[4, 0, 1, 2][..]).is_err());
620
    /// ```
621
    #[inline(always)]
622
    fn flat_map<G, H, O2>(self, map: G) -> impls::FlatMap<Self, G, H, I, O, O2, E>
623
    where
624
        Self: core::marker::Sized,
625
        G: FnMut(O) -> H,
626
        H: Parser<I, O2, E>,
627
    {
628
        impls::FlatMap {
629
            f: self,
630
            g: map,
631
            h: Default::default(),
632
            i: Default::default(),
633
            o: Default::default(),
634
            o2: Default::default(),
635
            e: Default::default(),
636
        }
637
    }
638
639
    /// Applies a second parser over the output of the first one
640
    ///
641
    /// # Example
642
    ///
643
    /// ```rust
644
    /// # use winnow::{error::ErrMode, Parser};
645
    /// # use winnow::prelude::*;
646
    /// use winnow::ascii::digit1;
647
    /// use winnow::token::take;
648
    /// # fn main() {
649
    ///
650
    /// fn parser<'i>(input: &mut &'i str) -> ModalResult<&'i str> {
651
    ///     take(5u8).and_then(digit1).parse_next(input)
652
    /// }
653
    ///
654
    /// assert_eq!(parser.parse_peek("12345"), Ok(("", "12345")));
655
    /// assert_eq!(parser.parse_peek("123ab"), Ok(("", "123")));
656
    /// assert!(parser.parse_peek("123").is_err());
657
    /// # }
658
    /// ```
659
    #[inline(always)]
660
    fn and_then<G, O2>(self, inner: G) -> impls::AndThen<Self, G, I, O, O2, E>
661
    where
662
        Self: core::marker::Sized,
663
        G: Parser<O, O2, E>,
664
        O: StreamIsPartial,
665
        I: Stream,
666
    {
667
        impls::AndThen {
668
            outer: self,
669
            inner,
670
            i: Default::default(),
671
            o: Default::default(),
672
            o2: Default::default(),
673
            e: Default::default(),
674
        }
675
    }
676
677
    /// Apply [`std::str::FromStr`] to the output of the parser
678
    ///
679
    /// # Example
680
    ///
681
    /// ```rust
682
    /// # use winnow::prelude::*;
683
    /// use winnow::{error::ErrMode, Parser};
684
    /// use winnow::ascii::digit1;
685
    ///
686
    /// fn parser<'s>(input: &mut &'s str) -> ModalResult<u64> {
687
    ///     digit1.parse_to().parse_next(input)
688
    /// }
689
    ///
690
    /// // the parser will count how many characters were returned by digit1
691
    /// assert_eq!(parser.parse_peek("123456"), Ok(("", 123456)));
692
    ///
693
    /// // this will fail if digit1 fails
694
    /// assert!(parser.parse_peek("abc").is_err());
695
    /// ```
696
    #[doc(alias = "from_str")]
697
    #[inline(always)]
698
    fn parse_to<O2>(self) -> impls::ParseTo<Self, I, O, O2, E>
699
    where
700
        Self: core::marker::Sized,
701
        I: Stream,
702
        O: ParseSlice<O2>,
703
        E: ParserError<I>,
704
    {
705
        impls::ParseTo {
706
            p: self,
707
            i: Default::default(),
708
            o: Default::default(),
709
            o2: Default::default(),
710
            e: Default::default(),
711
        }
712
    }
713
714
    /// Returns the output of the child parser if it satisfies a verification function.
715
    ///
716
    /// The verification function takes as argument a reference to the output of the
717
    /// parser.
718
    ///
719
    /// # Example
720
    ///
721
    /// ```rust
722
    /// # use winnow::{error::ErrMode, Parser};
723
    /// # use winnow::ascii::alpha1;
724
    /// # use winnow::prelude::*;
725
    /// # fn main() {
726
    ///
727
    /// fn parser<'i>(input: &mut &'i str) -> ModalResult<&'i str> {
728
    ///     alpha1.verify(|s: &str| s.len() == 4).parse_next(input)
729
    /// }
730
    ///
731
    /// assert_eq!(parser.parse_peek("abcd"), Ok(("", "abcd")));
732
    /// assert!(parser.parse_peek("abcde").is_err());
733
    /// assert!(parser.parse_peek("123abcd;").is_err());
734
    /// # }
735
    /// ```
736
    #[doc(alias = "satisfy")]
737
    #[doc(alias = "filter")]
738
    #[inline(always)]
739
145M
    fn verify<G, O2>(self, filter: G) -> impls::Verify<Self, G, I, O, O2, E>
740
145M
    where
741
145M
        Self: core::marker::Sized,
742
145M
        G: FnMut(&O2) -> bool,
743
145M
        I: Stream,
744
145M
        O: crate::lib::std::borrow::Borrow<O2>,
745
145M
        O2: ?Sized,
746
145M
        E: ParserError<I>,
747
    {
748
145M
        impls::Verify {
749
145M
            parser: self,
750
145M
            filter,
751
145M
            i: Default::default(),
752
145M
            o: Default::default(),
753
145M
            o2: Default::default(),
754
145M
            e: Default::default(),
755
145M
        }
756
145M
    }
<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::verify::<winnow::token::one_of<&[u8], [char; 2], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0}, u8>
Line
Count
Source
739
75.7M
    fn verify<G, O2>(self, filter: G) -> impls::Verify<Self, G, I, O, O2, E>
740
75.7M
    where
741
75.7M
        Self: core::marker::Sized,
742
75.7M
        G: FnMut(&O2) -> bool,
743
75.7M
        I: Stream,
744
75.7M
        O: crate::lib::std::borrow::Borrow<O2>,
745
75.7M
        O2: ?Sized,
746
75.7M
        E: ParserError<I>,
747
    {
748
75.7M
        impls::Verify {
749
75.7M
            parser: self,
750
75.7M
            filter,
751
75.7M
            i: Default::default(),
752
75.7M
            o: Default::default(),
753
75.7M
            o2: Default::default(),
754
75.7M
            e: Default::default(),
755
75.7M
        }
756
75.7M
    }
<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::verify::<winnow::token::one_of<&[u8], gix_config::parse::nom::config_name::{closure#0}, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0}, u8>
Line
Count
Source
739
50.3M
    fn verify<G, O2>(self, filter: G) -> impls::Verify<Self, G, I, O, O2, E>
740
50.3M
    where
741
50.3M
        Self: core::marker::Sized,
742
50.3M
        G: FnMut(&O2) -> bool,
743
50.3M
        I: Stream,
744
50.3M
        O: crate::lib::std::borrow::Borrow<O2>,
745
50.3M
        O2: ?Sized,
746
50.3M
        E: ParserError<I>,
747
    {
748
50.3M
        impls::Verify {
749
50.3M
            parser: self,
750
50.3M
            filter,
751
50.3M
            i: Default::default(),
752
50.3M
            o: Default::default(),
753
50.3M
            o2: Default::default(),
754
50.3M
            e: Default::default(),
755
50.3M
        }
756
50.3M
    }
<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::verify::<winnow::token::one_of<&[u8], gix_config::parse::nom::is_subsection_escapable_char, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0}, u8>
Line
Count
Source
739
4.61M
    fn verify<G, O2>(self, filter: G) -> impls::Verify<Self, G, I, O, O2, E>
740
4.61M
    where
741
4.61M
        Self: core::marker::Sized,
742
4.61M
        G: FnMut(&O2) -> bool,
743
4.61M
        I: Stream,
744
4.61M
        O: crate::lib::std::borrow::Borrow<O2>,
745
4.61M
        O2: ?Sized,
746
4.61M
        E: ParserError<I>,
747
    {
748
4.61M
        impls::Verify {
749
4.61M
            parser: self,
750
4.61M
            filter,
751
4.61M
            i: Default::default(),
752
4.61M
            o: Default::default(),
753
4.61M
            o2: Default::default(),
754
4.61M
            e: Default::default(),
755
4.61M
        }
756
4.61M
    }
<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::verify::<winnow::token::one_of<&[u8], char, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0}, u8>
Line
Count
Source
739
14.8M
    fn verify<G, O2>(self, filter: G) -> impls::Verify<Self, G, I, O, O2, E>
740
14.8M
    where
741
14.8M
        Self: core::marker::Sized,
742
14.8M
        G: FnMut(&O2) -> bool,
743
14.8M
        I: Stream,
744
14.8M
        O: crate::lib::std::borrow::Borrow<O2>,
745
14.8M
        O2: ?Sized,
746
14.8M
        E: ParserError<I>,
747
    {
748
14.8M
        impls::Verify {
749
14.8M
            parser: self,
750
14.8M
            filter,
751
14.8M
            i: Default::default(),
752
14.8M
            o: Default::default(),
753
14.8M
            o2: Default::default(),
754
14.8M
            e: Default::default(),
755
14.8M
        }
756
14.8M
    }
757
758
    /// If parsing fails, add context to the error
759
    ///
760
    /// This is used mainly to add user friendly information
761
    /// to errors when backtracking through a parse tree.
762
    ///
763
    /// See also [tutorial][crate::_tutorial::chapter_7].
764
    ///
765
    /// # Example
766
    ///
767
    /// ```rust
768
    /// # use winnow::prelude::*;
769
    /// # use winnow::{error::ErrMode, Parser};
770
    /// # use winnow::ascii::digit1;
771
    /// # use winnow::error::StrContext;
772
    /// # use winnow::error::StrContextValue;
773
    /// # fn main() {
774
    ///
775
    /// fn parser<'i>(input: &mut &'i str) -> ModalResult<&'i str> {
776
    ///     digit1
777
    ///       .context(StrContext::Expected(StrContextValue::Description("digit")))
778
    ///       .parse_next(input)
779
    /// }
780
    ///
781
    /// assert_eq!(parser.parse_peek("123456"), Ok(("", "123456")));
782
    /// assert!(parser.parse_peek("abc").is_err());
783
    /// # }
784
    /// ```
785
    #[doc(alias = "labelled")]
786
    #[inline(always)]
787
17.8M
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
17.8M
    where
789
17.8M
        Self: core::marker::Sized,
790
17.8M
        I: Stream,
791
17.8M
        E: AddContext<I, C>,
792
17.8M
        E: ParserError<I>,
793
17.8M
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
17.8M
        impls::Context {
796
17.8M
            parser: self,
797
17.8M
            context,
798
17.8M
            i: Default::default(),
799
17.8M
            o: Default::default(),
800
17.8M
            e: Default::default(),
801
17.8M
        }
802
17.8M
    }
Unexecuted instantiation: <winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_actor::signature::decode::function::decode<()> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_ref::store_impl::file::log::line::decode::message<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <(winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_actor::signature::decode::function::decode<()>, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], gix_object::Kind, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#3} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#3}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, <gix_object::TagRefIter>::next_inner_::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#1}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#2} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#1}, &[u8], &[u8], bstr::bstring::BString, winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
2.00k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
2.00k
    where
789
2.00k
        Self: core::marker::Sized,
790
2.00k
        I: Stream,
791
2.00k
        E: AddContext<I, C>,
792
2.00k
        E: ParserError<I>,
793
2.00k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
2.00k
        impls::Context {
796
2.00k
            parser: self,
797
2.00k
            context,
798
2.00k
            i: Default::default(),
799
2.00k
            o: Default::default(),
800
2.00k
            e: Default::default(),
801
2.00k
        }
802
2.00k
    }
<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], gix_object::Kind, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
1.96k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
1.96k
    where
789
1.96k
        Self: core::marker::Sized,
790
1.96k
        I: Stream,
791
1.96k
        E: AddContext<I, C>,
792
1.96k
        E: ParserError<I>,
793
1.96k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
1.96k
        impls::Context {
796
1.96k
            parser: self,
797
1.96k
            context,
798
1.96k
            i: Default::default(),
799
1.96k
            o: Default::default(),
800
1.96k
            e: Default::default(),
801
1.96k
        }
802
1.96k
    }
<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
2.00k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
2.00k
    where
789
2.00k
        Self: core::marker::Sized,
790
2.00k
        I: Stream,
791
2.00k
        E: AddContext<I, C>,
792
2.00k
        E: ParserError<I>,
793
2.00k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
2.00k
        impls::Context {
796
2.00k
            parser: self,
797
2.00k
            context,
798
2.00k
            i: Default::default(),
799
2.00k
            o: Default::default(),
800
2.00k
            e: Default::default(),
801
2.00k
        }
802
2.00k
    }
<gix_object::tag::decode::git_tag<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
1.96k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
1.96k
    where
789
1.96k
        Self: core::marker::Sized,
790
1.96k
        I: Stream,
791
1.96k
        E: AddContext<I, C>,
792
1.96k
        E: ParserError<I>,
793
1.96k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
1.96k
        impls::Context {
796
1.96k
            parser: self,
797
1.96k
            context,
798
1.96k
            i: Default::default(),
799
1.96k
            o: Default::default(),
800
1.96k
            e: Default::default(),
801
1.96k
        }
802
1.96k
    }
<gix_object::tag::decode::git_tag<()>::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
1.96k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
1.96k
    where
789
1.96k
        Self: core::marker::Sized,
790
1.96k
        I: Stream,
791
1.96k
        E: AddContext<I, C>,
792
1.96k
        E: ParserError<I>,
793
1.96k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
1.96k
        impls::Context {
796
1.96k
            parser: self,
797
1.96k
            context,
798
1.96k
            i: Default::default(),
799
1.96k
            o: Default::default(),
800
1.96k
            e: Default::default(),
801
1.96k
        }
802
1.96k
    }
<gix_object::commit::decode::commit<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
2.00k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
2.00k
    where
789
2.00k
        Self: core::marker::Sized,
790
2.00k
        I: Stream,
791
2.00k
        E: AddContext<I, C>,
792
2.00k
        E: ParserError<I>,
793
2.00k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
2.00k
        impls::Context {
796
2.00k
            parser: self,
797
2.00k
            context,
798
2.00k
            i: Default::default(),
799
2.00k
            o: Default::default(),
800
2.00k
            e: Default::default(),
801
2.00k
        }
802
2.00k
    }
<gix_object::commit::decode::commit<()>::{closure#3} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
2.00k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
2.00k
    where
789
2.00k
        Self: core::marker::Sized,
790
2.00k
        I: Stream,
791
2.00k
        E: AddContext<I, C>,
792
2.00k
        E: ParserError<I>,
793
2.00k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
2.00k
        impls::Context {
796
2.00k
            parser: self,
797
2.00k
            context,
798
2.00k
            i: Default::default(),
799
2.00k
            o: Default::default(),
800
2.00k
            e: Default::default(),
801
2.00k
        }
802
2.00k
    }
<gix_object::commit::decode::commit<()>::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
2.00k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
2.00k
    where
789
2.00k
        Self: core::marker::Sized,
790
2.00k
        I: Stream,
791
2.00k
        E: AddContext<I, C>,
792
2.00k
        E: ParserError<I>,
793
2.00k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
2.00k
        impls::Context {
796
2.00k
            parser: self,
797
2.00k
            context,
798
2.00k
            i: Default::default(),
799
2.00k
            o: Default::default(),
800
2.00k
            e: Default::default(),
801
2.00k
        }
802
2.00k
    }
<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
2.00k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
2.00k
    where
789
2.00k
        Self: core::marker::Sized,
790
2.00k
        I: Stream,
791
2.00k
        E: AddContext<I, C>,
792
2.00k
        E: ParserError<I>,
793
2.00k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
2.00k
        impls::Context {
796
2.00k
            parser: self,
797
2.00k
            context,
798
2.00k
            i: Default::default(),
799
2.00k
            o: Default::default(),
800
2.00k
            e: Default::default(),
801
2.00k
        }
802
2.00k
    }
<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#3}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
716
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
716
    where
789
716
        Self: core::marker::Sized,
790
716
        I: Stream,
791
716
        E: AddContext<I, C>,
792
716
        E: ParserError<I>,
793
716
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
716
        impls::Context {
796
716
            parser: self,
797
716
            context,
798
716
            i: Default::default(),
799
716
            o: Default::default(),
800
716
            e: Default::default(),
801
716
        }
802
716
    }
<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
1.96k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
1.96k
    where
789
1.96k
        Self: core::marker::Sized,
790
1.96k
        I: Stream,
791
1.96k
        E: AddContext<I, C>,
792
1.96k
        E: ParserError<I>,
793
1.96k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
1.96k
        impls::Context {
796
1.96k
            parser: self,
797
1.96k
            context,
798
1.96k
            i: Default::default(),
799
1.96k
            o: Default::default(),
800
1.96k
            e: Default::default(),
801
1.96k
        }
802
1.96k
    }
<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, <gix_object::TagRefIter>::next_inner_::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
1.45k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
1.45k
    where
789
1.45k
        Self: core::marker::Sized,
790
1.45k
        I: Stream,
791
1.45k
        E: AddContext<I, C>,
792
1.45k
        E: ParserError<I>,
793
1.45k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
1.45k
        impls::Context {
796
1.45k
            parser: self,
797
1.45k
            context,
798
1.45k
            i: Default::default(),
799
1.45k
            o: Default::default(),
800
1.45k
            e: Default::default(),
801
1.45k
        }
802
1.45k
    }
<winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#1}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
4.56k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
4.56k
    where
789
4.56k
        Self: core::marker::Sized,
790
4.56k
        I: Stream,
791
4.56k
        E: AddContext<I, C>,
792
4.56k
        E: ParserError<I>,
793
4.56k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
4.56k
        impls::Context {
796
4.56k
            parser: self,
797
4.56k
            context,
798
4.56k
            i: Default::default(),
799
4.56k
            o: Default::default(),
800
4.56k
            e: Default::default(),
801
4.56k
        }
802
4.56k
    }
<winnow::combinator::core::opt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
851k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
851k
    where
789
851k
        Self: core::marker::Sized,
790
851k
        I: Stream,
791
851k
        E: AddContext<I, C>,
792
851k
        E: ParserError<I>,
793
851k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
851k
        impls::Context {
796
851k
            parser: self,
797
851k
            context,
798
851k
            i: Default::default(),
799
851k
            o: Default::default(),
800
851k
            e: Default::default(),
801
851k
        }
802
851k
    }
<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
6.76k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
6.76k
    where
789
6.76k
        Self: core::marker::Sized,
790
6.76k
        I: Stream,
791
6.76k
        E: AddContext<I, C>,
792
6.76k
        E: ParserError<I>,
793
6.76k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
6.76k
        impls::Context {
796
6.76k
            parser: self,
797
6.76k
            context,
798
6.76k
            i: Default::default(),
799
6.76k
            o: Default::default(),
800
6.76k
            e: Default::default(),
801
6.76k
        }
802
6.76k
    }
<winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
834
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
834
    where
789
834
        Self: core::marker::Sized,
790
834
        I: Stream,
791
834
        E: AddContext<I, C>,
792
834
        E: ParserError<I>,
793
834
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
834
        impls::Context {
796
834
            parser: self,
797
834
            context,
798
834
            i: Default::default(),
799
834
            o: Default::default(),
800
834
            e: Default::default(),
801
834
        }
802
834
    }
<<gix_object::CommitRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
2.00k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
2.00k
    where
789
2.00k
        Self: core::marker::Sized,
790
2.00k
        I: Stream,
791
2.00k
        E: AddContext<I, C>,
792
2.00k
        E: ParserError<I>,
793
2.00k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
2.00k
        impls::Context {
796
2.00k
            parser: self,
797
2.00k
            context,
798
2.00k
            i: Default::default(),
799
2.00k
            o: Default::default(),
800
2.00k
            e: Default::default(),
801
2.00k
        }
802
2.00k
    }
<<gix_object::CommitRefIter>::next_inner_::{closure#2} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
2.64k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
2.64k
    where
789
2.64k
        Self: core::marker::Sized,
790
2.64k
        I: Stream,
791
2.64k
        E: AddContext<I, C>,
792
2.64k
        E: ParserError<I>,
793
2.64k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
2.64k
        impls::Context {
796
2.64k
            parser: self,
797
2.64k
            context,
798
2.64k
            i: Default::default(),
799
2.64k
            o: Default::default(),
800
2.64k
            e: Default::default(),
801
2.64k
        }
802
2.64k
    }
<<gix_object::TagRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
1.96k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
1.96k
    where
789
1.96k
        Self: core::marker::Sized,
790
1.96k
        I: Stream,
791
1.96k
        E: AddContext<I, C>,
792
1.96k
        E: ParserError<I>,
793
1.96k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
1.96k
        impls::Context {
796
1.96k
            parser: self,
797
1.96k
            context,
798
1.96k
            i: Default::default(),
799
1.96k
            o: Default::default(),
800
1.96k
            e: Default::default(),
801
1.96k
        }
802
1.96k
    }
<<gix_object::TagRefIter>::next_inner_::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
1.51k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
1.51k
    where
789
1.51k
        Self: core::marker::Sized,
790
1.51k
        I: Stream,
791
1.51k
        E: AddContext<I, C>,
792
1.51k
        E: ParserError<I>,
793
1.51k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
1.51k
        impls::Context {
796
1.51k
            parser: self,
797
1.51k
            context,
798
1.51k
            i: Default::default(),
799
1.51k
            o: Default::default(),
800
1.51k
            e: Default::default(),
801
1.51k
        }
802
1.51k
    }
<<gix_object::TagRefIter>::next_inner_::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
1.77k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
1.77k
    where
789
1.77k
        Self: core::marker::Sized,
790
1.77k
        I: Stream,
791
1.77k
        E: AddContext<I, C>,
792
1.77k
        E: ParserError<I>,
793
1.77k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
1.77k
        impls::Context {
796
1.77k
            parser: self,
797
1.77k
            context,
798
1.77k
            i: Default::default(),
799
1.77k
            o: Default::default(),
800
1.77k
            e: Default::default(),
801
1.77k
        }
802
1.77k
    }
<(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#1}, &[u8], &[u8], bstr::bstring::BString, winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
1.70M
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
1.70M
    where
789
1.70M
        Self: core::marker::Sized,
790
1.70M
        I: Stream,
791
1.70M
        E: AddContext<I, C>,
792
1.70M
        E: ParserError<I>,
793
1.70M
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
1.70M
        impls::Context {
796
1.70M
            parser: self,
797
1.70M
            context,
798
1.70M
            i: Default::default(),
799
1.70M
            o: Default::default(),
800
1.70M
            e: Default::default(),
801
1.70M
        }
802
1.70M
    }
<winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
2.51M
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
2.51M
    where
789
2.51M
        Self: core::marker::Sized,
790
2.51M
        I: Stream,
791
2.51M
        E: AddContext<I, C>,
792
2.51M
        E: ParserError<I>,
793
2.51M
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
2.51M
        impls::Context {
796
2.51M
            parser: self,
797
2.51M
            context,
798
2.51M
            i: Default::default(),
799
2.51M
            o: Default::default(),
800
2.51M
            e: Default::default(),
801
2.51M
        }
802
2.51M
    }
<gix_actor::signature::decode::function::decode<()> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
2.53M
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
2.53M
    where
789
2.53M
        Self: core::marker::Sized,
790
2.53M
        I: Stream,
791
2.53M
        E: AddContext<I, C>,
792
2.53M
        E: ParserError<I>,
793
2.53M
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
2.53M
        impls::Context {
796
2.53M
            parser: self,
797
2.53M
            context,
798
2.53M
            i: Default::default(),
799
2.53M
            o: Default::default(),
800
2.53M
            e: Default::default(),
801
2.53M
        }
802
2.53M
    }
<gix_ref::store_impl::file::log::line::decode::message<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
2.51M
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
2.51M
    where
789
2.51M
        Self: core::marker::Sized,
790
2.51M
        I: Stream,
791
2.51M
        E: AddContext<I, C>,
792
2.51M
        E: ParserError<I>,
793
2.51M
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
2.51M
        impls::Context {
796
2.51M
            parser: self,
797
2.51M
            context,
798
2.51M
            i: Default::default(),
799
2.51M
            o: Default::default(),
800
2.51M
            e: Default::default(),
801
2.51M
        }
802
2.51M
    }
<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
5.07M
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
5.07M
    where
789
5.07M
        Self: core::marker::Sized,
790
5.07M
        I: Stream,
791
5.07M
        E: AddContext<I, C>,
792
5.07M
        E: ParserError<I>,
793
5.07M
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
5.07M
        impls::Context {
796
5.07M
            parser: self,
797
5.07M
            context,
798
5.07M
            i: Default::default(),
799
5.07M
            o: Default::default(),
800
5.07M
            e: Default::default(),
801
5.07M
        }
802
5.07M
    }
<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
71.4k
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
71.4k
    where
789
71.4k
        Self: core::marker::Sized,
790
71.4k
        I: Stream,
791
71.4k
        E: AddContext<I, C>,
792
71.4k
        E: ParserError<I>,
793
71.4k
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
71.4k
        impls::Context {
796
71.4k
            parser: self,
797
71.4k
            context,
798
71.4k
            i: Default::default(),
799
71.4k
            o: Default::default(),
800
71.4k
            e: Default::default(),
801
71.4k
        }
802
71.4k
    }
<(winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_actor::signature::decode::function::decode<()>, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Line
Count
Source
787
2.53M
    fn context<C>(self, context: C) -> impls::Context<Self, I, O, E, C>
788
2.53M
    where
789
2.53M
        Self: core::marker::Sized,
790
2.53M
        I: Stream,
791
2.53M
        E: AddContext<I, C>,
792
2.53M
        E: ParserError<I>,
793
2.53M
        C: Clone + crate::lib::std::fmt::Debug,
794
    {
795
2.53M
        impls::Context {
796
2.53M
            parser: self,
797
2.53M
            context,
798
2.53M
            i: Default::default(),
799
2.53M
            o: Default::default(),
800
2.53M
            e: Default::default(),
801
2.53M
        }
802
2.53M
    }
Unexecuted instantiation: <winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], gix_object::Kind, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#3}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, <gix_object::TagRefIter>::next_inner_::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#1}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#3} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#2} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#1}, &[u8], &[u8], bstr::bstring::BString, winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], gix_object::Kind, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#3} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#3}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, <gix_object::TagRefIter>::next_inner_::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#1}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#2} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
Unexecuted instantiation: <(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#1}, &[u8], &[u8], bstr::bstring::BString, winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::context::<winnow::error::StrContext>
803
804
    /// If parsing fails, dynamically add context to the error
805
    ///
806
    /// This is used mainly to add user friendly information
807
    /// to errors when backtracking through a parse tree.
808
    ///
809
    /// See also [tutorial][crate::_tutorial::chapter_7].
810
    ///
811
    /// # Example
812
    ///
813
    /// ```rust
814
    /// # use winnow::prelude::*;
815
    /// # use winnow::{error::ErrMode, Parser};
816
    /// # use winnow::ascii::digit1;
817
    /// # use winnow::error::StrContext;
818
    /// # use winnow::error::StrContextValue;
819
    /// # fn main() {
820
    ///
821
    /// fn parser<'i>(input: &mut &'i str) -> ModalResult<&'i str> {
822
    ///     digit1
823
    ///       .context_with(|| {
824
    ///         "0123456789".chars().map(|c| StrContext::Expected(c.into()))
825
    ///       })
826
    ///       .parse_next(input)
827
    /// }
828
    ///
829
    /// assert_eq!(parser.parse_peek("123456"), Ok(("", "123456")));
830
    /// assert!(parser.parse_peek("abc").is_err());
831
    /// # }
832
    /// ```
833
    #[doc(alias = "labelled")]
834
    #[inline(always)]
835
    fn context_with<F, C, FI>(self, context: F) -> impls::ContextWith<Self, I, O, E, F, C, FI>
836
    where
837
        Self: core::marker::Sized,
838
        I: Stream,
839
        E: AddContext<I, C>,
840
        E: ParserError<I>,
841
        F: Fn() -> FI + Clone,
842
        C: crate::lib::std::fmt::Debug,
843
        FI: Iterator<Item = C>,
844
    {
845
        impls::ContextWith {
846
            parser: self,
847
            context,
848
            i: Default::default(),
849
            o: Default::default(),
850
            e: Default::default(),
851
            c: Default::default(),
852
            fi: Default::default(),
853
        }
854
    }
855
856
    /// Maps a function over the error of a parser
857
    ///
858
    /// # Example
859
    ///
860
    /// ```rust
861
    /// # use winnow::prelude::*;
862
    /// # use winnow::Parser;
863
    /// # use winnow::Result;
864
    /// # use winnow::ascii::digit1;
865
    /// # use winnow::error::StrContext;
866
    /// # use winnow::error::AddContext;
867
    /// # use winnow::error::ContextError;
868
    /// # fn main() {
869
    ///
870
    /// fn parser<'i>(input: &mut &'i str) -> Result<&'i str> {
871
    ///     digit1.map_err(|mut e: ContextError| {
872
    ///         e.extend("0123456789".chars().map(|c| StrContext::Expected(c.into())));
873
    ///         e
874
    ///     }).parse_next(input)
875
    /// }
876
    ///
877
    /// assert_eq!(parser.parse_peek("123456"), Ok(("", "123456")));
878
    /// assert!(parser.parse_peek("abc").is_err());
879
    /// # }
880
    /// ```
881
    #[inline(always)]
882
    fn map_err<G, E2>(self, map: G) -> impls::MapErr<Self, G, I, O, E, E2>
883
    where
884
        G: FnMut(E) -> E2,
885
        Self: core::marker::Sized,
886
    {
887
        impls::MapErr {
888
            parser: self,
889
            map,
890
            i: Default::default(),
891
            o: Default::default(),
892
            e: Default::default(),
893
            e2: Default::default(),
894
        }
895
    }
896
897
    /// Transforms [`Incomplete`][crate::error::ErrMode::Incomplete] into [`Backtrack`][crate::error::ErrMode::Backtrack]
898
    ///
899
    /// # Example
900
    ///
901
    /// ```rust
902
    /// # use winnow::{error::ErrMode, error::InputError, stream::Partial, Parser};
903
    /// # use winnow::token::take;
904
    /// # use winnow::prelude::*;
905
    /// # fn main() {
906
    ///
907
    /// fn parser<'i>(input: &mut Partial<&'i str>) -> ModalResult<&'i str, InputError<Partial<&'i str>>> {
908
    ///     take(5u8).complete_err().parse_next(input)
909
    /// }
910
    ///
911
    /// assert_eq!(parser.parse_peek(Partial::new("abcdefg")), Ok((Partial::new("fg"), "abcde")));
912
    /// assert_eq!(parser.parse_peek(Partial::new("abcd")), Err(ErrMode::Backtrack(InputError::at(Partial::new("abcd")))));
913
    /// # }
914
    /// ```
915
    #[inline(always)]
916
    fn complete_err(self) -> impls::CompleteErr<Self, I, O, E>
917
    where
918
        Self: core::marker::Sized,
919
    {
920
        impls::CompleteErr {
921
            p: self,
922
            i: Default::default(),
923
            o: Default::default(),
924
            e: Default::default(),
925
        }
926
    }
927
928
    /// Convert the parser's error to another type using [`std::convert::From`]
929
    #[inline(always)]
930
    fn err_into<E2>(self) -> impls::ErrInto<Self, I, O, E, E2>
931
    where
932
        Self: core::marker::Sized,
933
        E: Into<E2>,
934
    {
935
        impls::ErrInto {
936
            parser: self,
937
            i: Default::default(),
938
            o: Default::default(),
939
            e: Default::default(),
940
            e2: Default::default(),
941
        }
942
    }
943
944
    /// Recover from an error by skipping everything `recover` consumes and trying again
945
    ///
946
    /// If `recover` consumes nothing, the error is returned, allowing an alternative recovery
947
    /// method.
948
    ///
949
    /// This commits the parse result, preventing alternative branch paths like with
950
    /// [`winnow::combinator::alt`][crate::combinator::alt].
951
    #[inline(always)]
952
    #[cfg(feature = "unstable-recover")]
953
    #[cfg(feature = "std")]
954
    fn retry_after<R>(self, recover: R) -> impls::RetryAfter<Self, R, I, O, E>
955
    where
956
        Self: core::marker::Sized,
957
        R: Parser<I, (), E>,
958
        I: Stream,
959
        I: Recover<E>,
960
        E: ParserError<I> + FromRecoverableError<I, E>,
961
    {
962
        impls::RetryAfter {
963
            parser: self,
964
            recover,
965
            i: Default::default(),
966
            o: Default::default(),
967
            e: Default::default(),
968
        }
969
    }
970
971
    /// Recover from an error by skipping this parse and everything `recover` consumes
972
    ///
973
    /// This commits the parse result, preventing alternative branch paths like with
974
    /// [`winnow::combinator::alt`][crate::combinator::alt].
975
    #[inline(always)]
976
    #[cfg(feature = "unstable-recover")]
977
    #[cfg(feature = "std")]
978
    fn resume_after<R>(self, recover: R) -> impls::ResumeAfter<Self, R, I, O, E>
979
    where
980
        Self: core::marker::Sized,
981
        R: Parser<I, (), E>,
982
        I: Stream,
983
        I: Recover<E>,
984
        E: ParserError<I> + FromRecoverableError<I, E>,
985
    {
986
        impls::ResumeAfter {
987
            parser: self,
988
            recover,
989
            i: Default::default(),
990
            o: Default::default(),
991
            e: Default::default(),
992
        }
993
    }
994
}
995
996
impl<I, O, E, F> Parser<I, O, E> for F
997
where
998
    F: FnMut(&mut I) -> Result<O, E>,
999
    I: Stream,
1000
{
1001
    #[inline(always)]
1002
1.56G
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.56G
        self(i)
1004
1.56G
    }
<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
144M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
144M
        self(i)
1004
144M
    }
<<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], gix_config::parse::Event, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, (winnow::combinator::impls::Map<gix_config::parse::nom::comment, gix_config::parse::Event::Comment, &[u8], gix_config::parse::Comment, gix_config::parse::Event, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::combinator::impls::Map<gix_config::parse::nom::take_spaces1, gix_config::parse::nom::from_bytes::{closure#0}, &[u8], &bstr::bstr::BStr, gix_config::parse::Event, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, gix_config::parse::nom::from_bytes::{closure#1})>::{closure#0}, &[u8], gix_config::parse::Event, (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::fold<gix_config::parse::nom::from_bytes::{closure#2}, gix_config::parse::nom::from_bytes::{closure#3}, ()>::{closure#0} as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
20.8k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
20.8k
        self(i)
1004
20.8k
    }
<winnow::token::take_while<gix_config::parse::nom::value_impl::{closure#0}, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
15.8M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
15.8M
        self(i)
1004
15.8M
    }
<winnow::token::take_while<gix_config::parse::nom::config_name::{closure#1}, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
16.2M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
16.2M
        self(i)
1004
16.2M
    }
<winnow::token::take_while<gix_config::parse::nom::is_section_char, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
14.8M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
14.8M
        self(i)
1004
14.8M
    }
<winnow::token::take_while<gix_config::parse::nom::is_subsection_unescaped_char, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
8.22M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
8.22M
        self(i)
1004
8.22M
    }
<winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_space, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
80.7M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
80.7M
        self(i)
1004
80.7M
    }
<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0} as winnow::parser::Parser<&[u8], u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
144M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
144M
        self(i)
1004
144M
    }
<winnow::token::literal<&str, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
208M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
208M
        self(i)
1004
208M
    }
<winnow::token::literal<char, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
36.5M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
36.5M
        self(i)
1004
36.5M
    }
<winnow::token::take_till<gix_config::parse::nom::comment::{closure#0}, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
23.7M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
23.7M
        self(i)
1004
23.7M
    }
<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, gix_config::parse::nom::subsection_subset>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
8.22M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
8.22M
        self(i)
1004
8.22M
    }
<winnow::combinator::core::opt<&[u8], alloc::borrow::Cow<bstr::bstr::BStr>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, gix_config::parse::nom::sub_section>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<alloc::borrow::Cow<bstr::bstr::BStr>>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
700k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
700k
        self(i)
1004
700k
    }
<winnow::combinator::core::opt<&[u8], gix_config::parse::Comment, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, gix_config::parse::nom::comment>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_config::parse::Comment>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
50.3M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
50.3M
        self(i)
1004
50.3M
    }
<winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, gix_config::parse::nom::config_name>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
50.3M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
50.3M
        self(i)
1004
50.3M
    }
<winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, gix_config::parse::nom::take_spaces1>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
67.0M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
67.0M
        self(i)
1004
67.0M
    }
<winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, gix_config::parse::nom::take_newlines1>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
50.3M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
50.3M
        self(i)
1004
50.3M
    }
<winnow::combinator::core::opt<&[u8], char, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, char>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<char>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
16.2M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
16.2M
        self(i)
1004
16.2M
    }
<winnow::combinator::core::opt<&[u8], u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, winnow::combinator::impls::Verify<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::token::one_of<&[u8], char, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0}, &[u8], u8, u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<u8>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
14.8M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
14.8M
        self(i)
1004
14.8M
    }
<winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, (gix_config::parse::nom::subsection_unescaped, gix_config::parse::nom::subsection_escaped_char)>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
8.22M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
8.22M
        self(i)
1004
8.22M
    }
<winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, (&str, &str)>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
108M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
108M
        self(i)
1004
108M
    }
<winnow::combinator::branch::alt<&[u8], gix_config::parse::Event, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, (winnow::combinator::impls::Map<gix_config::parse::nom::comment, gix_config::parse::Event::Comment, &[u8], gix_config::parse::Comment, gix_config::parse::Event, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::combinator::impls::Map<gix_config::parse::nom::take_spaces1, gix_config::parse::nom::from_bytes::{closure#0}, &[u8], &bstr::bstr::BStr, gix_config::parse::Event, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, gix_config::parse::nom::from_bytes::{closure#1})>::{closure#0} as winnow::parser::Parser<&[u8], gix_config::parse::Event, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
25.3M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
25.3M
        self(i)
1004
25.3M
    }
<winnow::combinator::sequence::preceded<&[u8], char, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, char, winnow::combinator::impls::Take<winnow::combinator::impls::Verify<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::token::one_of<&[u8], gix_config::parse::nom::is_subsection_escapable_char, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0}, &[u8], u8, u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, &[u8], u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
4.61M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.61M
        self(i)
1004
4.61M
    }
<winnow::combinator::sequence::preceded<&[u8], char, &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, char, winnow::combinator::impls::Map<winnow::token::take_while<gix_config::parse::nom::is_section_char, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0}, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
14.8M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
14.8M
        self(i)
1004
14.8M
    }
<winnow::combinator::sequence::delimited<&[u8], char, core::option::Option<alloc::borrow::Cow<bstr::bstr::BStr>>, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, char, winnow::combinator::core::opt<&[u8], alloc::borrow::Cow<bstr::bstr::BStr>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, gix_config::parse::nom::sub_section>::{closure#0}, &str>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<alloc::borrow::Cow<bstr::bstr::BStr>>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
700k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
700k
        self(i)
1004
700k
    }
<gix_config::parse::nom::from_bytes::{closure#4} as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
14.8M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
14.8M
        self(i)
1004
14.8M
    }
<gix_config::parse::nom::from_bytes::{closure#1} as winnow::parser::Parser<&[u8], gix_config::parse::Event, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
12.6M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
12.6M
        self(i)
1004
12.6M
    }
<<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, (&str, &str)>::{closure#0}, &[u8], &[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
63.0M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
63.0M
        self(i)
1004
63.0M
    }
<<winnow::combinator::multi::Repeat<gix_config::parse::nom::from_bytes::{closure#4}, &[u8], (), (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
13.6k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
13.6k
        self(i)
1004
13.6k
    }
<gix_config::parse::nom::config_name as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
50.3M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
50.3M
        self(i)
1004
50.3M
    }
<gix_config::parse::nom::sub_section as winnow::parser::Parser<&[u8], alloc::borrow::Cow<bstr::bstr::BStr>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
700k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
700k
        self(i)
1004
700k
    }
<gix_config::parse::nom::take_spaces1 as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
80.7M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
80.7M
        self(i)
1004
80.7M
    }
<gix_config::parse::nom::take_newlines1 as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
63.0M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
63.0M
        self(i)
1004
63.0M
    }
<gix_config::parse::nom::subsection_subset as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
8.22M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
8.22M
        self(i)
1004
8.22M
    }
<gix_config::parse::nom::subsection_unescaped as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
8.22M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
8.22M
        self(i)
1004
8.22M
    }
<gix_config::parse::nom::subsection_escaped_char as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
4.61M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.61M
        self(i)
1004
4.61M
    }
<gix_config::parse::nom::comment as winnow::parser::Parser<&[u8], gix_config::parse::Comment, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1002
75.7M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
75.7M
        self(i)
1004
75.7M
    }
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_ref::parse::newline<winnow::error::ContextError> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <gix_ref::parse::newline<()> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_ref::parse::hex_hash<winnow::error::ContextError> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <gix_ref::parse::hex_hash<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_actor::signature::decode::function::decode<()> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_actor::signature::decode::function::identity<()> as winnow::parser::Parser<&[u8], gix_actor::IdentityRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_ref::store_impl::packed::decode::until_newline<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_ref::store_impl::packed::decode::header<()> as winnow::parser::Parser<&[u8], gix_ref::store_impl::packed::decode::Header, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_ref::store_impl::packed::decode::reference<()> as winnow::parser::Parser<&[u8], gix_ref::store_impl::packed::Reference, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_ref::store_impl::file::log::line::decode::message<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_ref::store_impl::packed::decode::until_newline<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_ref::store_impl::file::log::line::decode::message<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_ref::store_impl::file::loose::reference::decode::parse::{closure#0}, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_ref::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_ref::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<u8, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8; 18], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8; 1], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8; 1], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8; 2], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8; 2], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&str, &[u8], winnow::error::ErrMode<winnow::error::ContextError>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<u8, &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::newline<winnow::error::ContextError>>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, &str, winnow::token::take_while<u8, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::delimited<&[u8], &[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, &[u8; 1], gix_ref::parse::hex_hash<()>, gix_ref::parse::newline<()>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&[u8],)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], u8, winnow::error::ErrMode<()>, u8>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<u8>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, (&[u8; 2], &[u8; 1])>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<()>, (&[u8; 2], &[u8; 1])>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, (winnow::combinator::sequence::preceded<&[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>, u8, winnow::combinator::impls::Context<gix_ref::store_impl::file::log::line::decode::message<()>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>>::{closure#0}, winnow::combinator::impls::Value<u8, &[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>>, winnow::combinator::impls::Value<winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, winnow::combinator::impls::Context<winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>)>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, &str, winnow::token::take_while<u8, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_while<gix_ref::store_impl::packed::decode::until_newline<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_ref::parse::newline<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::ContextError>, winnow::token::take_while<gix_ref::store_impl::file::loose::reference::decode::parse::{closure#0}, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::newline<winnow::error::ContextError>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], core::option::Option<u8>, winnow::error::ErrMode<()>, winnow::token::take_while<gix_ref::store_impl::file::log::line::decode::message<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::core::opt<&[u8], u8, winnow::error::ErrMode<()>, u8>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::hex_hash<winnow::error::ContextError>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::newline<winnow::error::ContextError>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8; 18], gix_ref::store_impl::packed::decode::until_newline<()>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], gix_ref::store_impl::packed::decode::Header, &[u8], winnow::error::ErrMode<()>, gix_ref::store_impl::packed::decode::header<()>, winnow::token::rest<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>, u8, winnow::combinator::impls::Context<gix_ref::store_impl::file::log::line::decode::message<()>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::delimited<&[u8], &[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, &[u8; 1], gix_ref::parse::hex_hash<()>, gix_ref::parse::newline<()>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_actor::signature::decode::function::decode<()>, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_ref::store_impl::file::log::line::decode::message<()>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<(winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_actor::signature::decode::function::decode<()>, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>), &[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::parse::any_header_field_multi_line<()> as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::parse::hex_hash<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::parse::signature<()> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()> as winnow::parser::Parser<&[u8], gix_object::TagRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::message<()> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()> as winnow::parser::Parser<&[u8], gix_object::CommitRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::message<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_actor::signature::decode::function::identity<()> as winnow::parser::Parser<&[u8], gix_actor::IdentityRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tree::ref_iter::decode::tree<()> as winnow::parser::Parser<&[u8], gix_object::TreeRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::message::body::parse_single_line_trailer<()> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::message::decode::subject_and_body<()> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::message::decode::newline<()> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_object::tag::decode::git_tag<()>::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<<gix_object::TagRefIter>::next_inner_::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_object::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_alpha, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8; 1], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8; 2], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_till<gix_object::commit::message::decode::subject_and_body<()>::{closure#0}, &[u8], (), core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], ()>>::parse_next
Unexecuted instantiation: <winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#3}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, <gix_object::TagRefIter>::next_inner_::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#1}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&[u8],)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<()>, (&[u8; 1], &[u8; 2])>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>, ((winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}), winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#3}, &[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>)>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<gix_object::tag::decode::git_tag<()>::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<gix_object::TagRefIter>::next_inner_::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_alpha, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], gix_actor::SignatureRef, &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::signature<()>>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::hex_hash<()>>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr), &[u8], winnow::error::ErrMode<()>, gix_object::commit::message::body::parse_single_line_trailer<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::tag::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::commit::message::decode::subject_and_body<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::separated_pair<&[u8], &[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8; 2], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<gix_object::tag::decode::git_tag<()>::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<gix_object::TagRefIter>::next_inner_::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_alpha, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::signature<()>>::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::hex_hash<()>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (gix_object::commit::message::decode::newline<()>, gix_object::commit::message::decode::newline<()>), winnow::token::rest<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::delimited<&[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), core::option::Option<&[u8]>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::branch::alt<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>, ((winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}), winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#3}, &[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>)>::{closure#0}, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8]>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#3} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#5} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#7} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#1} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#2} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#4} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#5} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#1} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>>, &[u8], gix_object::Kind, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_object::Kind, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_object::Kind, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#3}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, <gix_object::TagRefIter>::next_inner_::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#1}>::{closure#0}, &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0}>::{closure#0}, &[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#3}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#4}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::CommitRefIter>::next_inner_::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::CommitRefIter>::next_inner_::{closure#2}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::TagRefIter>::next_inner_::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::TagRefIter>::next_inner_::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::TagRefIter>::next_inner_::{closure#1}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#1}, &[u8], &[u8], bstr::bstring::BString, winnow::error::ErrMode<()>>), &[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next
<winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.73k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.73k
        self(i)
1004
1.73k
    }
<gix_object::parse::any_header_field_multi_line<()> as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
852k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
852k
        self(i)
1004
852k
    }
<gix_object::parse::hex_hash<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
13.4k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
13.4k
        self(i)
1004
13.4k
    }
<gix_object::parse::signature<()> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
6.76k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
6.76k
        self(i)
1004
6.76k
    }
<winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.78k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.78k
        self(i)
1004
1.78k
    }
<gix_object::tag::decode::git_tag<()> as winnow::parser::Parser<&[u8], gix_object::TagRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.96k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.96k
        self(i)
1004
1.96k
    }
<gix_object::tag::decode::message<()> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
2.28k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
2.28k
        self(i)
1004
2.28k
    }
<gix_object::commit::decode::commit<()> as winnow::parser::Parser<&[u8], gix_object::CommitRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
2.00k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
2.00k
        self(i)
1004
2.00k
    }
<gix_object::commit::decode::message<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.13k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.13k
        self(i)
1004
1.13k
    }
<gix_object::tree::ref_iter::decode::tree<()> as winnow::parser::Parser<&[u8], gix_object::TreeRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
974
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
974
        self(i)
1004
974
    }
Unexecuted instantiation: <gix_object::commit::message::body::parse_single_line_trailer<()> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::message::decode::subject_and_body<()> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::message::decode::newline<()> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
<gix_actor::signature::decode::function::identity<()> as winnow::parser::Parser<&[u8], gix_actor::IdentityRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
6.76k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
6.76k
        self(i)
1004
6.76k
    }
<winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
144k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
144k
        self(i)
1004
144k
    }
<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
5.20k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
5.20k
        self(i)
1004
5.20k
    }
<winnow::token::take_while<gix_object::tag::decode::git_tag<()>::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.51k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.51k
        self(i)
1004
1.51k
    }
<winnow::token::take_while<<gix_object::TagRefIter>::next_inner_::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.51k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.51k
        self(i)
1004
1.51k
    }
<winnow::token::take_while<gix_object::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
13.4k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
13.4k
        self(i)
1004
13.4k
    }
<winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_alpha, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
3.54k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
3.54k
        self(i)
1004
3.54k
    }
<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.73k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.73k
        self(i)
1004
1.73k
    }
<winnow::token::literal<&[u8; 1], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
5.20k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
5.20k
        self(i)
1004
5.20k
    }
Unexecuted instantiation: <winnow::token::literal<&[u8; 2], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
<winnow::token::literal<&[u8], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
8.73M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
8.73M
        self(i)
1004
8.73M
    }
Unexecuted instantiation: <winnow::token::take_till<gix_object::commit::message::decode::subject_and_body<()>::{closure#0}, &[u8], (), core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], ()>>::parse_next
<winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
6.65M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
6.65M
        self(i)
1004
6.65M
    }
<winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.78k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.78k
        self(i)
1004
1.78k
    }
<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.33k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.33k
        self(i)
1004
1.33k
    }
<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
722
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
722
        self(i)
1004
722
    }
<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#3}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
716
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
716
        self(i)
1004
716
    }
<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
5.20k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
5.20k
        self(i)
1004
5.20k
    }
<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.47k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.47k
        self(i)
1004
1.47k
    }
<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, <gix_object::TagRefIter>::next_inner_::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.45k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.45k
        self(i)
1004
1.45k
    }
<winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#1}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.56k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.56k
        self(i)
1004
4.56k
    }
<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&[u8],)>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
5.20k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
5.20k
        self(i)
1004
5.20k
    }
<winnow::combinator::core::opt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
851k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
851k
        self(i)
1004
851k
    }
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<()>, (&[u8; 1], &[u8; 2])>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
<winnow::combinator::branch::alt<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>, ((winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}), winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#3}, &[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>)>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.33k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.33k
        self(i)
1004
1.33k
    }
<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
852k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
852k
        self(i)
1004
852k
    }
<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
851k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
851k
        self(i)
1004
851k
    }
<winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
33.4k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
33.4k
        self(i)
1004
33.4k
    }
<winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<gix_object::tag::decode::git_tag<()>::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.52k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.52k
        self(i)
1004
1.52k
    }
<winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<gix_object::TagRefIter>::next_inner_::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.51k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.51k
        self(i)
1004
1.51k
    }
<winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_alpha, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
3.55k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
3.55k
        self(i)
1004
3.55k
    }
<winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.43k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.43k
        self(i)
1004
1.43k
    }
<winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
3.32M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
3.32M
        self(i)
1004
3.32M
    }
<winnow::combinator::sequence::terminated<&[u8], gix_actor::SignatureRef, &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::signature<()>>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
8.27k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
8.27k
        self(i)
1004
8.27k
    }
<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.13k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.13k
        self(i)
1004
1.13k
    }
<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::hex_hash<()>>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
17.1k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
17.1k
        self(i)
1004
17.1k
    }
<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.84M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.84M
        self(i)
1004
1.84M
    }
<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.62M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.62M
        self(i)
1004
1.62M
    }
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr), &[u8], winnow::error::ErrMode<()>, gix_object::commit::message::body::parse_single_line_trailer<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
<winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::tag::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
2.28k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
2.28k
        self(i)
1004
2.28k
    }
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::commit::message::decode::subject_and_body<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::separated_pair<&[u8], &[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8; 2], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
6.76k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
6.76k
        self(i)
1004
6.76k
    }
<winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<gix_object::tag::decode::git_tag<()>::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.52k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.52k
        self(i)
1004
1.52k
    }
<winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<gix_object::TagRefIter>::next_inner_::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.51k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.51k
        self(i)
1004
1.51k
    }
<winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_alpha, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
3.55k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
3.55k
        self(i)
1004
3.55k
    }
<winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.43k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.43k
        self(i)
1004
1.43k
    }
<winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
244
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
244
        self(i)
1004
244
    }
<winnow::combinator::sequence::preceded<&[u8], &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::signature<()>>::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
8.27k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
8.27k
        self(i)
1004
8.27k
    }
<winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
834
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
834
        self(i)
1004
834
    }
<winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::hex_hash<()>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
17.1k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
17.1k
        self(i)
1004
17.1k
    }
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (gix_object::commit::message::decode::newline<()>, gix_object::commit::message::decode::newline<()>), winnow::token::rest<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
<winnow::combinator::sequence::delimited<&[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), core::option::Option<&[u8]>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::branch::alt<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>, ((winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}), winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#3}, &[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>)>::{closure#0}, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8]>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
2.23k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
2.23k
        self(i)
1004
2.23k
    }
<gix_object::tag::decode::git_tag<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.96k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.96k
        self(i)
1004
1.96k
    }
<gix_object::tag::decode::git_tag<()>::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.52k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.52k
        self(i)
1004
1.52k
    }
<gix_object::tag::decode::git_tag<()>::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.47k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.47k
        self(i)
1004
1.47k
    }
<gix_object::tag::decode::git_tag<()>::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.78k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.78k
        self(i)
1004
1.78k
    }
<gix_object::commit::decode::commit<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
2.00k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
2.00k
        self(i)
1004
2.00k
    }
<gix_object::commit::decode::commit<()>::{closure#3} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.82k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.82k
        self(i)
1004
1.82k
    }
<gix_object::commit::decode::commit<()>::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
882
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
882
        self(i)
1004
882
    }
<gix_object::commit::decode::commit<()>::{closure#5} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
722
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
722
        self(i)
1004
722
    }
<gix_object::commit::decode::commit<()>::{closure#7} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
812k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
812k
        self(i)
1004
812k
    }
<gix_object::commit::decode::commit<()>::{closure#1} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.59k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.59k
        self(i)
1004
4.59k
    }
<<gix_object::CommitRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
2.00k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
2.00k
        self(i)
1004
2.00k
    }
<<gix_object::CommitRefIter>::next_inner_::{closure#2} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
2.64k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
2.64k
        self(i)
1004
2.64k
    }
<<gix_object::CommitRefIter>::next_inner_::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
716
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
716
        self(i)
1004
716
    }
<<gix_object::CommitRefIter>::next_inner_::{closure#4} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
851k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
851k
        self(i)
1004
851k
    }
<<gix_object::CommitRefIter>::next_inner_::{closure#5} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
812k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
812k
        self(i)
1004
812k
    }
<<gix_object::CommitRefIter>::next_inner_::{closure#1} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.56k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.56k
        self(i)
1004
4.56k
    }
<<gix_object::TagRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.96k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.96k
        self(i)
1004
1.96k
    }
<<gix_object::TagRefIter>::next_inner_::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.51k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.51k
        self(i)
1004
1.51k
    }
<<gix_object::TagRefIter>::next_inner_::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.45k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.45k
        self(i)
1004
1.45k
    }
<<gix_object::TagRefIter>::next_inner_::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.77k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.77k
        self(i)
1004
1.77k
    }
<<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
722
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
722
        self(i)
1004
722
    }
<<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.70M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.70M
        self(i)
1004
1.70M
    }
<<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.82k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.82k
        self(i)
1004
1.82k
    }
<<winnow::combinator::impls::Context<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.82k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.82k
        self(i)
1004
1.82k
    }
<<winnow::combinator::impls::Context<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>>, &[u8], gix_object::Kind, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_object::Kind, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_object::Kind, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.78k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.78k
        self(i)
1004
1.78k
    }
<<winnow::combinator::impls::Context<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
722
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
722
        self(i)
1004
722
    }
<<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
722
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
722
        self(i)
1004
722
    }
<<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#3}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
716
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
716
        self(i)
1004
716
    }
<<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.47k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.47k
        self(i)
1004
1.47k
    }
<<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, <gix_object::TagRefIter>::next_inner_::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.45k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.45k
        self(i)
1004
1.45k
    }
<<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#1}>::{closure#0}, &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.56k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.56k
        self(i)
1004
4.56k
    }
<<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0}>::{closure#0}, &[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
851k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
851k
        self(i)
1004
851k
    }
<<winnow::combinator::impls::Context<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
6.76k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
6.76k
        self(i)
1004
6.76k
    }
<<winnow::combinator::impls::Context<winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
834
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
834
        self(i)
1004
834
    }
<<winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.96k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.96k
        self(i)
1004
1.96k
    }
<<winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.52k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.52k
        self(i)
1004
1.52k
    }
<<winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
2.00k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
2.00k
        self(i)
1004
2.00k
    }
<<winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#3}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.82k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.82k
        self(i)
1004
1.82k
    }
<<winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#4}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
882
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
882
        self(i)
1004
882
    }
<<winnow::combinator::impls::Context<<gix_object::CommitRefIter>::next_inner_::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
2.00k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
2.00k
        self(i)
1004
2.00k
    }
<<winnow::combinator::impls::Context<<gix_object::CommitRefIter>::next_inner_::{closure#2}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
2.64k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
2.64k
        self(i)
1004
2.64k
    }
<<winnow::combinator::impls::Context<<gix_object::TagRefIter>::next_inner_::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.96k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.96k
        self(i)
1004
1.96k
    }
<<winnow::combinator::impls::Context<<gix_object::TagRefIter>::next_inner_::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.51k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.51k
        self(i)
1004
1.51k
    }
<<winnow::combinator::impls::Context<<gix_object::TagRefIter>::next_inner_::{closure#1}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.77k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.77k
        self(i)
1004
1.77k
    }
<<winnow::combinator::impls::Context<(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#1}, &[u8], &[u8], bstr::bstring::BString, winnow::error::ErrMode<()>>), &[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.70M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.70M
        self(i)
1004
1.70M
    }
<winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.19k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.19k
        self(i)
1004
4.19k
    }
Unexecuted instantiation: <gix_ref::parse::newline<winnow::error::ContextError> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<gix_ref::parse::newline<()> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.47M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.47M
        self(i)
1004
1.47M
    }
Unexecuted instantiation: <gix_ref::parse::hex_hash<winnow::error::ContextError> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<gix_ref::parse::hex_hash<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.09M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.09M
        self(i)
1004
4.09M
    }
<winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
23.8k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
23.8k
        self(i)
1004
23.8k
    }
<winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.37k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.37k
        self(i)
1004
4.37k
    }
<gix_actor::signature::decode::function::decode<()> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
71.4k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
71.4k
        self(i)
1004
71.4k
    }
<gix_actor::signature::decode::function::identity<()> as winnow::parser::Parser<&[u8], gix_actor::IdentityRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
71.4k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
71.4k
        self(i)
1004
71.4k
    }
<gix_ref::store_impl::packed::decode::until_newline<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.42M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.42M
        self(i)
1004
1.42M
    }
<gix_ref::store_impl::packed::decode::header<()> as winnow::parser::Parser<&[u8], gix_ref::store_impl::packed::decode::Header, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
18
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
18
        self(i)
1004
18
    }
<gix_ref::store_impl::packed::decode::reference<()> as winnow::parser::Parser<&[u8], gix_ref::store_impl::packed::Reference, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.42M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.42M
        self(i)
1004
1.42M
    }
<gix_ref::store_impl::file::log::line::decode::message<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
11.7k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
11.7k
        self(i)
1004
11.7k
    }
<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
35.9k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
35.9k
        self(i)
1004
35.9k
    }
<winnow::token::take_while<gix_ref::store_impl::packed::decode::until_newline<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.42M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.42M
        self(i)
1004
1.42M
    }
<winnow::token::take_while<gix_ref::store_impl::file::log::line::decode::message<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
19.2k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
19.2k
        self(i)
1004
19.2k
    }
Unexecuted instantiation: <winnow::token::take_while<gix_ref::store_impl::file::loose::reference::decode::parse::{closure#0}, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_ref::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<winnow::token::take_while<gix_ref::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.09M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.09M
        self(i)
1004
4.09M
    }
Unexecuted instantiation: <winnow::token::take_while<u8, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.19k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.19k
        self(i)
1004
4.19k
    }
<winnow::token::literal<&[u8; 18], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
18
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
18
        self(i)
1004
18
    }
Unexecuted instantiation: <winnow::token::literal<&[u8; 1], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<winnow::token::literal<&[u8; 1], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.49M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.49M
        self(i)
1004
4.49M
    }
Unexecuted instantiation: <winnow::token::literal<&[u8; 2], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<winnow::token::literal<&[u8; 2], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.47M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.47M
        self(i)
1004
1.47M
    }
Unexecuted instantiation: <winnow::token::literal<&str, &[u8], winnow::error::ErrMode<winnow::error::ContextError>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<winnow::token::literal<u8, &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
67.7k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
67.7k
        self(i)
1004
67.7k
    }
<winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
23.8k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
23.8k
        self(i)
1004
23.8k
    }
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::newline<winnow::error::ContextError>>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, &str, winnow::token::take_while<u8, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
35.9k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
35.9k
        self(i)
1004
35.9k
    }
<winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::delimited<&[u8], &[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, &[u8; 1], gix_ref::parse::hex_hash<()>, gix_ref::parse::newline<()>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.42M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.42M
        self(i)
1004
1.42M
    }
<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&[u8],)>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
35.9k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
35.9k
        self(i)
1004
35.9k
    }
<winnow::combinator::core::opt<&[u8], u8, winnow::error::ErrMode<()>, u8>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<u8>, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
19.2k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
19.2k
        self(i)
1004
19.2k
    }
<winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.37k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.37k
        self(i)
1004
4.37k
    }
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, (&[u8; 2], &[u8; 1])>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<()>, (&[u8; 2], &[u8; 1])>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.47M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.47M
        self(i)
1004
1.47M
    }
<winnow::combinator::branch::alt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, (winnow::combinator::sequence::preceded<&[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>, u8, winnow::combinator::impls::Context<gix_ref::store_impl::file::log::line::decode::message<()>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>>::{closure#0}, winnow::combinator::impls::Value<u8, &[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>>, winnow::combinator::impls::Value<winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, winnow::combinator::impls::Context<winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>)>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
24.2k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
24.2k
        self(i)
1004
24.2k
    }
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, &str, winnow::token::take_while<u8, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_while<gix_ref::store_impl::packed::decode::until_newline<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_ref::parse::newline<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.42M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.42M
        self(i)
1004
1.42M
    }
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::ContextError>, winnow::token::take_while<gix_ref::store_impl::file::loose::reference::decode::parse::{closure#0}, &[u8], winnow::error::ErrMode<winnow::error::ContextError>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::newline<winnow::error::ContextError>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<winnow::combinator::sequence::terminated<&[u8], &[u8], core::option::Option<u8>, winnow::error::ErrMode<()>, winnow::token::take_while<gix_ref::store_impl::file::log::line::decode::message<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::core::opt<&[u8], u8, winnow::error::ErrMode<()>, u8>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
19.2k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
19.2k
        self(i)
1004
19.2k
    }
<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.04M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.04M
        self(i)
1004
4.04M
    }
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, core::option::Option<&[u8]>, winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::hex_hash<winnow::error::ContextError>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>, gix_ref::parse::newline<winnow::error::ContextError>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
71.4k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
71.4k
        self(i)
1004
71.4k
    }
<winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8; 18], gix_ref::store_impl::packed::decode::until_newline<()>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
18
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
18
        self(i)
1004
18
    }
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], gix_ref::store_impl::packed::decode::Header, &[u8], winnow::error::ErrMode<()>, gix_ref::store_impl::packed::decode::header<()>, winnow::token::rest<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
<winnow::combinator::sequence::preceded<&[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>, u8, winnow::combinator::impls::Context<gix_ref::store_impl::file::log::line::decode::message<()>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
24.2k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
24.2k
        self(i)
1004
24.2k
    }
<winnow::combinator::sequence::delimited<&[u8], &[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, &[u8; 1], gix_ref::parse::hex_hash<()>, gix_ref::parse::newline<()>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
1.42M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
1.42M
        self(i)
1004
1.42M
    }
<<winnow::combinator::impls::Context<winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
4.37k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
4.37k
        self(i)
1004
4.37k
    }
<<winnow::combinator::impls::Context<gix_actor::signature::decode::function::decode<()>, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
71.4k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
71.4k
        self(i)
1004
71.4k
    }
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_ref::store_impl::file::log::line::decode::message<()>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
<<winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
2.61M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
2.61M
        self(i)
1004
2.61M
    }
<<winnow::combinator::impls::Context<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
71.4k
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
71.4k
        self(i)
1004
71.4k
    }
<<winnow::combinator::impls::Context<(winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_actor::signature::decode::function::decode<()>, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>), &[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1002
2.53M
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1003
2.53M
        self(i)
1004
2.53M
    }
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::parse::any_header_field_multi_line<()> as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::parse::hex_hash<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::parse::signature<()> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()> as winnow::parser::Parser<&[u8], gix_object::TagRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::message<()> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()> as winnow::parser::Parser<&[u8], gix_object::CommitRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::message<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_actor::signature::decode::function::identity<()> as winnow::parser::Parser<&[u8], gix_actor::IdentityRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tree::ref_iter::decode::tree<()> as winnow::parser::Parser<&[u8], gix_object::TreeRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::message::body::parse_single_line_trailer<()> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::message::decode::subject_and_body<()> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::message::decode::newline<()> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_object::tag::decode::git_tag<()>::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<<gix_object::TagRefIter>::next_inner_::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_object::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_alpha, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8; 1], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8; 2], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_till<gix_object::commit::message::decode::subject_and_body<()>::{closure#0}, &[u8], (), core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], ()>>::parse_next
Unexecuted instantiation: <winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#3}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, <gix_object::TagRefIter>::next_inner_::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#1}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&[u8],)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<()>, (&[u8; 1], &[u8; 2])>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>, ((winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}), winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#3}, &[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>)>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<gix_object::tag::decode::git_tag<()>::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<gix_object::TagRefIter>::next_inner_::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_alpha, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], gix_actor::SignatureRef, &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::signature<()>>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::hex_hash<()>>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr), &[u8], winnow::error::ErrMode<()>, gix_object::commit::message::body::parse_single_line_trailer<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::tag::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::commit::message::decode::subject_and_body<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::separated_pair<&[u8], &[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8; 2], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<gix_object::tag::decode::git_tag<()>::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<gix_object::TagRefIter>::next_inner_::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_alpha, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::signature<()>>::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::hex_hash<()>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (gix_object::commit::message::decode::newline<()>, gix_object::commit::message::decode::newline<()>), winnow::token::rest<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::delimited<&[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), core::option::Option<&[u8]>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::branch::alt<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>, ((winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}), winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#3}, &[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>)>::{closure#0}, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8]>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#3} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#5} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#7} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#1} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#2} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#4} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#5} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#1} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>>, &[u8], gix_object::Kind, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_object::Kind, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_object::Kind, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#3}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, <gix_object::TagRefIter>::next_inner_::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#1}>::{closure#0}, &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0}>::{closure#0}, &[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#3}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#4}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::CommitRefIter>::next_inner_::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::CommitRefIter>::next_inner_::{closure#2}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::TagRefIter>::next_inner_::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::TagRefIter>::next_inner_::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::TagRefIter>::next_inner_::{closure#1}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#1}, &[u8], &[u8], bstr::bstring::BString, winnow::error::ErrMode<()>>), &[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::parse::any_header_field_multi_line<()> as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::parse::hex_hash<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::parse::signature<()> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()> as winnow::parser::Parser<&[u8], gix_object::TagRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::message<()> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()> as winnow::parser::Parser<&[u8], gix_object::CommitRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::message<()> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tree::ref_iter::decode::tree<()> as winnow::parser::Parser<&[u8], gix_object::TreeRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::message::body::parse_single_line_trailer<()> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::message::decode::subject_and_body<()> as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::message::decode::newline<()> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_actor::signature::decode::function::identity<()> as winnow::parser::Parser<&[u8], gix_actor::IdentityRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_object::tag::decode::git_tag<()>::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<<gix_object::TagRefIter>::next_inner_::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<gix_object::parse::is_hex_digit_lc, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeInclusive<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_alpha, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::rest<&[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8; 1], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8; 2], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::literal<&[u8], &[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::token::take_till<gix_object::commit::message::decode::subject_and_body<()>::{closure#0}, &[u8], (), core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], ()>>::parse_next
Unexecuted instantiation: <winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#3}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, <gix_object::TagRefIter>::next_inner_::{closure#4}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#1}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&[u8],)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::core::opt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], &[u8], winnow::error::ErrMode<()>, (&[u8; 1], &[u8; 2])>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>, ((winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}), winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#3}, &[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>)>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<gix_object::tag::decode::git_tag<()>::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<gix_object::TagRefIter>::next_inner_::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_alpha, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], gix_actor::SignatureRef, &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::signature<()>>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::hex_hash<()>>::{closure#0}, &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr), &[u8], winnow::error::ErrMode<()>, gix_object::commit::message::body::parse_single_line_trailer<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::tag::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::commit::message::decode::subject_and_body<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::separated_pair<&[u8], &[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8; 2], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<gix_object::tag::decode::git_tag<()>::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<gix_object::TagRefIter>::next_inner_::{closure#3}::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_while<<u8 as winnow::stream::AsChar>::is_alpha, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::signature<()>>::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, &[u8], &[u8]>::{closure#0}, gix_object::parse::hex_hash<()>>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::preceded<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (gix_object::commit::message::decode::newline<()>, gix_object::commit::message::decode::newline<()>), winnow::token::rest<&[u8], winnow::error::ErrMode<()>>>::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <winnow::combinator::sequence::delimited<&[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), core::option::Option<&[u8]>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::branch::alt<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>, ((winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}), winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#3}, &[u8], &[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>)>::{closure#0}, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8]>::{closure#0}>::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::tag::decode::git_tag<()>::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#3} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#5} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#7} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <gix_object::commit::decode::commit<()>::{closure#1} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#2} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#4} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#5} as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::CommitRefIter>::next_inner_::{closure#1} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#3} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#4} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<gix_object::TagRefIter>::next_inner_::{closure#1} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>>, &[u8], gix_object::Kind, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_object::Kind, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_object::Kind, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#3}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, <gix_object::TagRefIter>::next_inner_::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, <gix_object::CommitRefIter>::next_inner_::{closure#1}>::{closure#0}, &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (<gix_object::CommitRefIter>::next_inner_::{closure#4}, <gix_object::CommitRefIter>::next_inner_::{closure#5})>::{closure#0}>::{closure#0}, &[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], core::option::Option<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::sequence::separated_pair<&[u8], gix_actor::IdentityRef, core::option::Option<&[u8]>, &str, winnow::error::ErrMode<()>, gix_actor::signature::decode::function::identity<()>, winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::core::opt<&[u8], (&[u8],), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,)>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#2}, &[u8], core::option::Option<(&[u8],)>, &str, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (gix_actor::IdentityRef, &str), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<winnow::combinator::sequence::preceded<&[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::token::rest<&[u8], winnow::error::ErrMode<()>>, <[u8] as bstr::ext_slice::ByteSlice>::as_bstr, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#3}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#4}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::CommitRefIter>::next_inner_::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::CommitRefIter>::next_inner_::{closure#2}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::TagRefIter>::next_inner_::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::TagRefIter>::next_inner_::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<<gix_object::TagRefIter>::next_inner_::{closure#1}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <<winnow::combinator::impls::Context<(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#1}, &[u8], &[u8], bstr::bstring::BString, winnow::error::ErrMode<()>>), &[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>, winnow::error::StrContext> as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next::{closure#0} as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next
1005
}
1006
1007
/// This is a shortcut for [`one_of`][crate::token::one_of].
1008
///
1009
/// # Example
1010
///
1011
/// ```rust
1012
/// # use winnow::prelude::*;
1013
/// # use winnow::{error::ErrMode, error::ContextError};
1014
/// fn parser<'s>(i: &mut &'s [u8]) -> ModalResult<u8>  {
1015
///     b'a'.parse_next(i)
1016
/// }
1017
/// assert_eq!(parser.parse_peek(&b"abc"[..]), Ok((&b"bc"[..], b'a')));
1018
/// assert!(parser.parse_peek(&b" abc"[..]).is_err());
1019
/// assert!(parser.parse_peek(&b"bc"[..]).is_err());
1020
/// assert!(parser.parse_peek(&b""[..]).is_err());
1021
/// ```
1022
impl<I, E> Parser<I, u8, E> for u8
1023
where
1024
    I: StreamIsPartial,
1025
    I: Stream,
1026
    I: Compare<u8>,
1027
    E: ParserError<I>,
1028
{
1029
    #[inline(always)]
1030
67.7k
    fn parse_next(&mut self, i: &mut I) -> Result<u8, E> {
1031
67.7k
        crate::token::literal(*self).value(*self).parse_next(i)
1032
67.7k
    }
Unexecuted instantiation: <u8 as winnow::parser::Parser<&[u8], u8, winnow::error::ErrMode<()>>>::parse_next
<u8 as winnow::parser::Parser<&[u8], u8, winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1030
67.7k
    fn parse_next(&mut self, i: &mut I) -> Result<u8, E> {
1031
67.7k
        crate::token::literal(*self).value(*self).parse_next(i)
1032
67.7k
    }
1033
}
1034
1035
/// This is a shortcut for [`one_of`][crate::token::one_of].
1036
///
1037
/// # Example
1038
///
1039
/// ```rust
1040
/// # use winnow::prelude::*;
1041
/// # use winnow::{error::ErrMode, error::ContextError};
1042
/// fn parser<'s>(i: &mut &'s str) -> ModalResult<char> {
1043
///     'a'.parse_next(i)
1044
/// }
1045
/// assert_eq!(parser.parse_peek("abc"), Ok(("bc", 'a')));
1046
/// assert!(parser.parse_peek(" abc").is_err());
1047
/// assert!(parser.parse_peek("bc").is_err());
1048
/// assert!(parser.parse_peek("").is_err());
1049
/// ```
1050
impl<I, E> Parser<I, char, E> for char
1051
where
1052
    I: StreamIsPartial,
1053
    I: Stream,
1054
    I: Compare<char>,
1055
    E: ParserError<I>,
1056
{
1057
    #[inline(always)]
1058
36.5M
    fn parse_next(&mut self, i: &mut I) -> Result<char, E> {
1059
36.5M
        crate::token::literal(*self).value(*self).parse_next(i)
1060
36.5M
    }
1061
}
1062
1063
/// This is a shortcut for [`literal`][crate::token::literal].
1064
///
1065
/// # Example
1066
/// ```rust
1067
/// # use winnow::prelude::*;
1068
/// # use winnow::{error::ErrMode, error::ContextError, error::Needed};
1069
/// # use winnow::combinator::alt;
1070
/// # use winnow::token::take;
1071
///
1072
/// fn parser<'s>(s: &mut &'s [u8]) -> ModalResult<&'s [u8]> {
1073
///   alt((&"Hello"[..], take(5usize))).parse_next(s)
1074
/// }
1075
///
1076
/// assert_eq!(parser.parse_peek(&b"Hello, World!"[..]), Ok((&b", World!"[..], &b"Hello"[..])));
1077
/// assert_eq!(parser.parse_peek(&b"Something"[..]), Ok((&b"hing"[..], &b"Somet"[..])));
1078
/// assert!(parser.parse_peek(&b"Some"[..]).is_err());
1079
/// assert!(parser.parse_peek(&b""[..]).is_err());
1080
/// ```
1081
impl<'s, I, E: ParserError<I>> Parser<I, <I as Stream>::Slice, E> for &'s [u8]
1082
where
1083
    I: Compare<&'s [u8]> + StreamIsPartial,
1084
    I: Stream,
1085
{
1086
    #[inline(always)]
1087
8.73M
    fn parse_next(&mut self, i: &mut I) -> Result<<I as Stream>::Slice, E> {
1088
8.73M
        crate::token::literal(*self).parse_next(i)
1089
8.73M
    }
Unexecuted instantiation: <&[u8] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
<&[u8] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1087
8.73M
    fn parse_next(&mut self, i: &mut I) -> Result<<I as Stream>::Slice, E> {
1088
8.73M
        crate::token::literal(*self).parse_next(i)
1089
8.73M
    }
Unexecuted instantiation: <&[u8] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <&[u8] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
1090
}
1091
1092
/// This is a shortcut for [`literal`][crate::token::literal].
1093
///
1094
/// # Example
1095
/// ```rust
1096
/// # use winnow::prelude::*;
1097
/// # use winnow::{error::ErrMode, error::ContextError, error::Needed};
1098
/// # use winnow::combinator::alt;
1099
/// # use winnow::token::take;
1100
/// use winnow::ascii::Caseless;
1101
///
1102
/// fn parser<'s>(s: &mut &'s [u8]) -> ModalResult<&'s [u8]> {
1103
///   alt((Caseless(&"hello"[..]), take(5usize))).parse_next(s)
1104
/// }
1105
///
1106
/// assert_eq!(parser.parse_peek(&b"Hello, World!"[..]), Ok((&b", World!"[..], &b"Hello"[..])));
1107
/// assert_eq!(parser.parse_peek(&b"hello, World!"[..]), Ok((&b", World!"[..], &b"hello"[..])));
1108
/// assert_eq!(parser.parse_peek(&b"HeLlo, World!"[..]), Ok((&b", World!"[..], &b"HeLlo"[..])));
1109
/// assert_eq!(parser.parse_peek(&b"Something"[..]), Ok((&b"hing"[..], &b"Somet"[..])));
1110
/// assert!(parser.parse_peek(&b"Some"[..]).is_err());
1111
/// assert!(parser.parse_peek(&b""[..]).is_err());
1112
/// ```
1113
impl<'s, I, E: ParserError<I>> Parser<I, <I as Stream>::Slice, E> for AsciiCaseless<&'s [u8]>
1114
where
1115
    I: Compare<AsciiCaseless<&'s [u8]>> + StreamIsPartial,
1116
    I: Stream,
1117
{
1118
    #[inline(always)]
1119
    fn parse_next(&mut self, i: &mut I) -> Result<<I as Stream>::Slice, E> {
1120
        crate::token::literal(*self).parse_next(i)
1121
    }
1122
}
1123
1124
/// This is a shortcut for [`literal`][crate::token::literal].
1125
///
1126
/// # Example
1127
/// ```rust
1128
/// # use winnow::prelude::*;
1129
/// # use winnow::{error::ErrMode, error::ContextError, error::Needed};
1130
/// # use winnow::combinator::alt;
1131
/// # use winnow::token::take;
1132
///
1133
/// fn parser<'s>(s: &mut &'s [u8]) -> ModalResult<&'s [u8]> {
1134
///   alt((b"Hello", take(5usize))).parse_next(s)
1135
/// }
1136
///
1137
/// assert_eq!(parser.parse_peek(&b"Hello, World!"[..]), Ok((&b", World!"[..], &b"Hello"[..])));
1138
/// assert_eq!(parser.parse_peek(&b"Something"[..]), Ok((&b"hing"[..], &b"Somet"[..])));
1139
/// assert!(parser.parse_peek(&b"Some"[..]).is_err());
1140
/// assert!(parser.parse_peek(&b""[..]).is_err());
1141
/// ```
1142
impl<'s, I, E: ParserError<I>, const N: usize> Parser<I, <I as Stream>::Slice, E> for &'s [u8; N]
1143
where
1144
    I: Compare<&'s [u8; N]> + StreamIsPartial,
1145
    I: Stream,
1146
{
1147
    #[inline(always)]
1148
5.97M
    fn parse_next(&mut self, i: &mut I) -> Result<<I as Stream>::Slice, E> {
1149
5.97M
        crate::token::literal(*self).parse_next(i)
1150
5.97M
    }
Unexecuted instantiation: <&[u8; 18] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <&[u8; 1] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <&[u8; 1] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <&[u8; 2] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <&[u8; 2] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <&[u8; 1] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <&[u8; 2] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
<&[u8; 1] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1148
5.20k
    fn parse_next(&mut self, i: &mut I) -> Result<<I as Stream>::Slice, E> {
1149
5.20k
        crate::token::literal(*self).parse_next(i)
1150
5.20k
    }
Unexecuted instantiation: <&[u8; 2] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
<&[u8; 18] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1148
18
    fn parse_next(&mut self, i: &mut I) -> Result<<I as Stream>::Slice, E> {
1149
18
        crate::token::literal(*self).parse_next(i)
1150
18
    }
Unexecuted instantiation: <&[u8; 1] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<&[u8; 1] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1148
4.49M
    fn parse_next(&mut self, i: &mut I) -> Result<<I as Stream>::Slice, E> {
1149
4.49M
        crate::token::literal(*self).parse_next(i)
1150
4.49M
    }
Unexecuted instantiation: <&[u8; 2] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
<&[u8; 2] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1148
1.47M
    fn parse_next(&mut self, i: &mut I) -> Result<<I as Stream>::Slice, E> {
1149
1.47M
        crate::token::literal(*self).parse_next(i)
1150
1.47M
    }
Unexecuted instantiation: <&[u8; 1] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <&[u8; 2] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <&[u8; 1] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <&[u8; 2] as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<()>>>::parse_next
1151
}
1152
1153
/// This is a shortcut for [`literal`][crate::token::literal].
1154
///
1155
/// # Example
1156
/// ```rust
1157
/// # use winnow::prelude::*;
1158
/// # use winnow::{error::ErrMode, error::ContextError, error::Needed};
1159
/// # use winnow::combinator::alt;
1160
/// # use winnow::token::take;
1161
/// use winnow::ascii::Caseless;
1162
///
1163
/// fn parser<'s>(s: &mut &'s [u8]) -> ModalResult<&'s [u8]> {
1164
///   alt((Caseless(b"hello"), take(5usize))).parse_next(s)
1165
/// }
1166
///
1167
/// assert_eq!(parser.parse_peek(&b"Hello, World!"[..]), Ok((&b", World!"[..], &b"Hello"[..])));
1168
/// assert_eq!(parser.parse_peek(&b"hello, World!"[..]), Ok((&b", World!"[..], &b"hello"[..])));
1169
/// assert_eq!(parser.parse_peek(&b"HeLlo, World!"[..]), Ok((&b", World!"[..], &b"HeLlo"[..])));
1170
/// assert_eq!(parser.parse_peek(&b"Something"[..]), Ok((&b"hing"[..], &b"Somet"[..])));
1171
/// assert!(parser.parse_peek(&b"Some"[..]).is_err());
1172
/// assert!(parser.parse_peek(&b""[..]).is_err());
1173
/// ```
1174
impl<'s, I, E: ParserError<I>, const N: usize> Parser<I, <I as Stream>::Slice, E>
1175
    for AsciiCaseless<&'s [u8; N]>
1176
where
1177
    I: Compare<AsciiCaseless<&'s [u8; N]>> + StreamIsPartial,
1178
    I: Stream,
1179
{
1180
    #[inline(always)]
1181
    fn parse_next(&mut self, i: &mut I) -> Result<<I as Stream>::Slice, E> {
1182
        crate::token::literal(*self).parse_next(i)
1183
    }
1184
}
1185
1186
/// This is a shortcut for [`literal`][crate::token::literal].
1187
///
1188
/// # Example
1189
/// ```rust
1190
/// # use winnow::prelude::*;
1191
/// # use winnow::{error::ErrMode, error::ContextError};
1192
/// # use winnow::combinator::alt;
1193
/// # use winnow::token::take;
1194
///
1195
/// fn parser<'s>(s: &mut &'s str) -> ModalResult<&'s str> {
1196
///   alt(("Hello", take(5usize))).parse_next(s)
1197
/// }
1198
///
1199
/// assert_eq!(parser.parse_peek("Hello, World!"), Ok((", World!", "Hello")));
1200
/// assert_eq!(parser.parse_peek("Something"), Ok(("hing", "Somet")));
1201
/// assert!(parser.parse_peek("Some").is_err());
1202
/// assert!(parser.parse_peek("").is_err());
1203
/// ```
1204
impl<'s, I, E: ParserError<I>> Parser<I, <I as Stream>::Slice, E> for &'s str
1205
where
1206
    I: Compare<&'s str> + StreamIsPartial,
1207
    I: Stream,
1208
{
1209
    #[inline(always)]
1210
208M
    fn parse_next(&mut self, i: &mut I) -> Result<<I as Stream>::Slice, E> {
1211
208M
        crate::token::literal(*self).parse_next(i)
1212
208M
    }
<&str as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1210
208M
    fn parse_next(&mut self, i: &mut I) -> Result<<I as Stream>::Slice, E> {
1211
208M
        crate::token::literal(*self).parse_next(i)
1212
208M
    }
Unexecuted instantiation: <&str as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
Unexecuted instantiation: <&str as winnow::parser::Parser<&[u8], &[u8], winnow::error::ErrMode<winnow::error::ContextError>>>::parse_next
1213
}
1214
1215
/// This is a shortcut for [`literal`][crate::token::literal].
1216
///
1217
/// # Example
1218
/// ```rust
1219
/// # use winnow::prelude::*;
1220
/// # use winnow::{error::ErrMode, error::ContextError};
1221
/// # use winnow::combinator::alt;
1222
/// # use winnow::token::take;
1223
/// # use winnow::ascii::Caseless;
1224
///
1225
/// fn parser<'s>(s: &mut &'s str) -> ModalResult<&'s str> {
1226
///   alt((Caseless("hello"), take(5usize))).parse_next(s)
1227
/// }
1228
///
1229
/// assert_eq!(parser.parse_peek("Hello, World!"), Ok((", World!", "Hello")));
1230
/// assert_eq!(parser.parse_peek("hello, World!"), Ok((", World!", "hello")));
1231
/// assert_eq!(parser.parse_peek("HeLlo, World!"), Ok((", World!", "HeLlo")));
1232
/// assert_eq!(parser.parse_peek("Something"), Ok(("hing", "Somet")));
1233
/// assert!(parser.parse_peek("Some").is_err());
1234
/// assert!(parser.parse_peek("").is_err());
1235
/// ```
1236
impl<'s, I, E: ParserError<I>> Parser<I, <I as Stream>::Slice, E> for AsciiCaseless<&'s str>
1237
where
1238
    I: Compare<AsciiCaseless<&'s str>> + StreamIsPartial,
1239
    I: Stream,
1240
{
1241
    #[inline(always)]
1242
    fn parse_next(&mut self, i: &mut I) -> Result<<I as Stream>::Slice, E> {
1243
        crate::token::literal(*self).parse_next(i)
1244
    }
1245
}
1246
1247
impl<I: Stream, E: ParserError<I>> Parser<I, (), E> for () {
1248
    #[inline(always)]
1249
    fn parse_next(&mut self, _i: &mut I) -> Result<(), E> {
1250
        Ok(())
1251
    }
1252
}
1253
1254
macro_rules! impl_parser_for_tuple {
1255
  ($($index:tt $parser:ident $output:ident),+) => (
1256
    #[allow(non_snake_case)]
1257
    impl<I: Stream, $($output),+, E: ParserError<I>, $($parser),+> Parser<I, ($($output),+,), E> for ($($parser),+,)
1258
    where
1259
      $($parser: Parser<I, $output, E>),+
1260
    {
1261
      #[inline(always)]
1262
140M
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
47.5M
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
44.2M
        Ok(($($output),+,))
1266
140M
      }
<(winnow::combinator::impls::Verify<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::token::one_of<&[u8], [char; 2], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0}, &[u8], u8, u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::combinator::impls::Map<winnow::token::take_till<gix_config::parse::nom::comment::{closure#0}, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_config::parse::nom::comment::{closure#1}, &[u8], &[u8], alloc::borrow::Cow<bstr::bstr::BStr>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>) as winnow::parser::Parser<&[u8], (u8, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1262
75.7M
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
23.7M
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
23.7M
        Ok(($($output),+,))
1266
75.7M
      }
<(winnow::combinator::impls::Verify<winnow::token::any<&[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::token::one_of<&[u8], gix_config::parse::nom::config_name::{closure#0}, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>::{closure#0}, &[u8], u8, u8, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>, winnow::token::take_while<gix_config::parse::nom::config_name::{closure#1}, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, core::ops::range::RangeFrom<usize>>::{closure#0}) as winnow::parser::Parser<&[u8], (u8, &[u8]), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1262
50.3M
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
16.2M
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
16.2M
        Ok(($($output),+,))
1266
50.3M
      }
<(gix_config::parse::nom::take_spaces1, winnow::combinator::sequence::delimited<&[u8], char, core::option::Option<alloc::borrow::Cow<bstr::bstr::BStr>>, &[u8], winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, char, winnow::combinator::core::opt<&[u8], alloc::borrow::Cow<bstr::bstr::BStr>, winnow::error::ErrMode<winnow::error::InputError<&[u8]>>, gix_config::parse::nom::sub_section>::{closure#0}, &str>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, core::option::Option<alloc::borrow::Cow<bstr::bstr::BStr>>), winnow::error::ErrMode<winnow::error::InputError<&[u8]>>>>::parse_next
Line
Count
Source
1262
700k
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
700k
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
699k
        Ok(($($output),+,))
1266
700k
      }
Unexecuted instantiation: <(winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,) as winnow::parser::Parser<&[u8], (&[u8],), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::impls::Context<(winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_actor::signature::decode::function::decode<()>, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>), &[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::branch::alt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, (winnow::combinator::sequence::preceded<&[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>, u8, winnow::combinator::impls::Context<gix_ref::store_impl::file::log::line::decode::message<()>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>>::{closure#0}, winnow::combinator::impls::Value<u8, &[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>>, winnow::combinator::impls::Value<winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, winnow::combinator::impls::Context<winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>)>::{closure#0}) as winnow::parser::Parser<&[u8], ((&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_actor::signature::decode::function::decode<()>, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::TryMap<gix_ref::store_impl::packed::decode::until_newline<()>, <&bstr::bstr::BStr as core::convert::TryInto<&gix_ref::FullNameRef>>::try_into, &[u8], &bstr::bstr::BStr, &gix_ref::FullNameRef, winnow::error::ErrMode<()>, gix_validate::reference::name::Error>, winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::delimited<&[u8], &[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, &[u8; 1], gix_ref::parse::hex_hash<()>, gix_ref::parse::newline<()>>::{closure#0}>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &gix_ref::FullNameRef, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,) as winnow::parser::Parser<&[u8], (&[u8],), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(gix_object::commit::message::decode::newline<()>, gix_object::commit::message::decode::newline<()>) as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}) as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#1}, &[u8], &[u8], bstr::bstring::BString, winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}) as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>>, &[u8], gix_object::Kind, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::tag::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, gix_object::Kind, &[u8], core::option::Option<gix_actor::SignatureRef>, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#3}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#4}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, gix_actor::SignatureRef, gix_actor::SignatureRef, core::option::Option<&[u8]>, alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
<(winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,) as winnow::parser::Parser<&[u8], (&[u8],), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
5.20k
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
5.20k
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
5.20k
        Ok(($($output),+,))
1266
5.20k
      }
Unexecuted instantiation: <(gix_object::commit::message::decode::newline<()>, gix_object::commit::message::decode::newline<()>) as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
<(winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
1.33k
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
244
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
84
        Ok(($($output),+,))
1266
1.33k
      }
<(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}) as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
1.62M
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
1.62M
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
1.62M
        Ok(($($output),+,))
1266
1.62M
      }
<(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#1}, &[u8], &[u8], bstr::bstring::BString, winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
1.70M
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
1.70M
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
78.0k
        Ok(($($output),+,))
1266
1.70M
      }
<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}) as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
1.84M
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
142k
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
142k
        Ok(($($output),+,))
1266
1.84M
      }
<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
1.70M
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
1.70M
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
78.0k
        Ok(($($output),+,))
1266
1.70M
      }
<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
244
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
84
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
84
        Ok(($($output),+,))
1266
244
      }
<(winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>>, &[u8], gix_object::Kind, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::tag::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, gix_object::Kind, &[u8], core::option::Option<gix_actor::SignatureRef>, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
1.96k
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
1.15k
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
708
        Ok(($($output),+,))
1266
1.96k
      }
<(winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#3}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#4}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, gix_actor::SignatureRef, gix_actor::SignatureRef, core::option::Option<&[u8]>, alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
2.00k
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
722
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
200
        Ok(($($output),+,))
1266
2.00k
      }
<(winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,) as winnow::parser::Parser<&[u8], (&[u8],), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
35.9k
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
35.9k
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
35.9k
        Ok(($($output),+,))
1266
35.9k
      }
<(winnow::combinator::impls::Context<(winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_actor::signature::decode::function::decode<()>, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>), &[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::branch::alt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, (winnow::combinator::sequence::preceded<&[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>, u8, winnow::combinator::impls::Context<gix_ref::store_impl::file::log::line::decode::message<()>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>>::{closure#0}, winnow::combinator::impls::Value<u8, &[u8], u8, &bstr::bstr::BStr, winnow::error::ErrMode<()>>, winnow::combinator::impls::Value<winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>, &[u8], &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, winnow::combinator::impls::Context<winnow::combinator::core::fail<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>>, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>)>::{closure#0}) as winnow::parser::Parser<&[u8], ((&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
2.51M
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
24.2k
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
19.8k
        Ok(($($output),+,))
1266
2.51M
      }
<(winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_actor::signature::decode::function::decode<()>, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &bstr::bstr::BStr, gix_actor::SignatureRef), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
2.53M
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
71.4k
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
35.9k
        Ok(($($output),+,))
1266
2.53M
      }
<(winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_ref::parse::hex_hash<()>, &[u8; 1]>::{closure#0}, winnow::combinator::impls::TryMap<gix_ref::store_impl::packed::decode::until_newline<()>, <&bstr::bstr::BStr as core::convert::TryInto<&gix_ref::FullNameRef>>::try_into, &[u8], &bstr::bstr::BStr, &gix_ref::FullNameRef, winnow::error::ErrMode<()>, gix_validate::reference::name::Error>, winnow::combinator::core::opt<&[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::combinator::sequence::delimited<&[u8], &[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, &[u8; 1], gix_ref::parse::hex_hash<()>, gix_ref::parse::newline<()>>::{closure#0}>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, &gix_ref::FullNameRef, core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Line
Count
Source
1262
1.42M
      fn parse_next(&mut self, i: &mut I) -> Result<($($output),+,), E> {
1263
1.42M
        $(let $output = self.$index.parse_next(i)?;)+
1264
1265
1.42M
        Ok(($($output),+,))
1266
1.42M
      }
Unexecuted instantiation: <(winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,) as winnow::parser::Parser<&[u8], (&[u8],), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(gix_object::commit::message::decode::newline<()>, gix_object::commit::message::decode::newline<()>) as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}) as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#1}, &[u8], &[u8], bstr::bstring::BString, winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}) as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>>, &[u8], gix_object::Kind, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::tag::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, gix_object::Kind, &[u8], core::option::Option<gix_actor::SignatureRef>, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#3}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#4}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, gix_actor::SignatureRef, gix_actor::SignatureRef, core::option::Option<&[u8]>, alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::impls::Map<winnow::token::take_while<gix_actor::signature::decode::function::decode<()>::{closure#0}, &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, gix_actor::signature::decode::function::decode<()>::{closure#1}, &[u8], &[u8], &[u8], winnow::error::ErrMode<()>>,) as winnow::parser::Parser<&[u8], (&[u8],), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(gix_object::commit::message::decode::newline<()>, gix_object::commit::message::decode::newline<()>) as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, winnow::combinator::sequence::preceded<&[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, &[u8], winnow::combinator::impls::Map<winnow::combinator::impls::Take<(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>, gix_object::tag::decode::message<()>::{closure#2}, &[u8], &[u8], core::option::Option<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&[u8], core::option::Option<&bstr::bstr::BStr>), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}) as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::sequence::terminated<&[u8], &[u8], &[u8], winnow::error::ErrMode<()>, winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8]>::{closure#0}, winnow::combinator::impls::Map<winnow::combinator::impls::Take<(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>), &[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#1}, &[u8], &[u8], bstr::bstring::BString, winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], bstr::bstring::BString), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}) as winnow::parser::Parser<&[u8], (&[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::token::take_till<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<winnow::combinator::sequence::terminated<&[u8], (&[u8], &[u8]), &[u8], winnow::error::ErrMode<()>, (&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}), &[u8]>::{closure#0}, &[u8], (&[u8], &[u8]), (), winnow::error::ErrMode<()>>, gix_object::parse::any_header_field_multi_line<()>::{closure#0}, &[u8], (), (), winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], ()), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(&[u8], winnow::token::take_until<&[u8], &[u8], winnow::error::ErrMode<()>, core::ops::range::RangeFrom<usize>>::{closure#0}, &[u8], winnow::token::rest<&[u8], winnow::error::ErrMode<()>>) as winnow::parser::Parser<&[u8], (&[u8], &[u8], &[u8], &[u8]), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::VerifyMap<gix_object::tag::decode::git_tag<()>::{closure#1}, gix_object::tag::decode::git_tag<()>::{closure#2}, &[u8], &[u8], gix_object::Kind, winnow::error::ErrMode<()>>, &[u8], gix_object::Kind, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::tag::decode::git_tag<()>::{closure#3}, &[u8], &[u8], winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, gix_object::tag::decode::git_tag<()>::{closure#4}>::{closure#0}, &[u8], core::option::Option<gix_actor::SignatureRef>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>), &[u8], winnow::error::ErrMode<()>, gix_object::tag::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, gix_object::Kind, &[u8], core::option::Option<gix_actor::SignatureRef>, (&bstr::bstr::BStr, core::option::Option<&bstr::bstr::BStr>)), winnow::error::ErrMode<()>>>::parse_next
Unexecuted instantiation: <(winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#0}, &[u8], &bstr::bstr::BStr, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::impls::Map<winnow::combinator::multi::Repeat<gix_object::commit::decode::commit<()>::{closure#1}, &[u8], &bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#2}, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<&bstr::bstr::BStr>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#3}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<gix_object::commit::decode::commit<()>::{closure#4}, &[u8], gix_actor::SignatureRef, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::core::opt<&[u8], &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::commit<()>::{closure#5}>::{closure#0}, &[u8], core::option::Option<&[u8]>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::impls::Context<winnow::combinator::multi::Repeat<winnow::combinator::branch::alt<&[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>, (winnow::combinator::impls::Map<gix_object::parse::any_header_field_multi_line<()>, gix_object::commit::decode::commit<()>::{closure#6}, &[u8], (&[u8], bstr::bstring::BString), (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), winnow::error::ErrMode<()>>, gix_object::commit::decode::commit<()>::{closure#7})>::{closure#0}, &[u8], (&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>), alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>>, &[u8], alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, winnow::error::ErrMode<()>, winnow::error::StrContext>, winnow::combinator::sequence::terminated<&[u8], &bstr::bstr::BStr, &[u8], winnow::error::ErrMode<()>, gix_object::commit::decode::message<()>, winnow::combinator::core::eof<&[u8], winnow::error::ErrMode<()>>>::{closure#0}) as winnow::parser::Parser<&[u8], (&bstr::bstr::BStr, alloc::vec::Vec<&bstr::bstr::BStr>, gix_actor::SignatureRef, gix_actor::SignatureRef, core::option::Option<&[u8]>, alloc::vec::Vec<(&bstr::bstr::BStr, alloc::borrow::Cow<bstr::bstr::BStr>)>, &bstr::bstr::BStr), winnow::error::ErrMode<()>>>::parse_next
1267
    }
1268
  )
1269
}
1270
1271
macro_rules! impl_parser_for_tuples {
1272
    ($index1:tt $parser1:ident $output1:ident, $($index:tt $parser:ident $output:ident),+) => {
1273
        impl_parser_for_tuples!(__impl $index1 $parser1 $output1; $($index $parser $output),+);
1274
    };
1275
    (__impl $($index:tt $parser:ident $output:ident),+; $index1:tt $parser1:ident $output1:ident $(,$index2:tt $parser2:ident $output2:ident)*) => {
1276
        impl_parser_for_tuple!($($index $parser $output),+);
1277
        impl_parser_for_tuples!(__impl $($index $parser $output),+, $index1 $parser1 $output1; $($index2 $parser2 $output2),*);
1278
    };
1279
    (__impl $($index:tt $parser:ident $output:ident),+;) => {
1280
        impl_parser_for_tuple!($($index $parser $output),+);
1281
    }
1282
}
1283
1284
impl_parser_for_tuples!(
1285
  0 P0 O0,
1286
  1 P1 O1,
1287
  2 P2 O2,
1288
  3 P3 O3,
1289
  4 P4 O4,
1290
  5 P5 O5,
1291
  6 P6 O6,
1292
  7 P7 O7,
1293
  8 P8 O8,
1294
  9 P9 O9,
1295
  10 P10 O10,
1296
  11 P11 O11,
1297
  12 P12 O12,
1298
  13 P13 O13,
1299
  14 P14 O14,
1300
  15 P15 O15,
1301
  16 P16 O16,
1302
  17 P17 O17,
1303
  18 P18 O18,
1304
  19 P19 O19,
1305
  20 P20 O20,
1306
  21 P21 O21
1307
);
1308
1309
#[cfg(feature = "alloc")]
1310
use crate::lib::std::boxed::Box;
1311
1312
#[cfg(feature = "alloc")]
1313
impl<I, O, E> Parser<I, O, E> for Box<dyn Parser<I, O, E> + '_> {
1314
    #[inline(always)]
1315
    fn parse_next(&mut self, i: &mut I) -> Result<O, E> {
1316
        (**self).parse_next(i)
1317
    }
1318
}
1319
1320
/// Trait alias for [`Parser`] to be used with [`ModalResult`][crate::error::ModalResult]
1321
pub trait ModalParser<I, O, E>: Parser<I, O, crate::error::ErrMode<E>> {}
1322
1323
impl<I, O, E, P> ModalParser<I, O, E> for P where P: Parser<I, O, crate::error::ErrMode<E>> {}
1324
1325
/// Collect all errors when parsing the input
1326
///
1327
/// [`Parser`]s will need to use [`Recoverable<I, _>`] for their input.
1328
#[cfg(feature = "unstable-recover")]
1329
#[cfg(feature = "std")]
1330
pub trait RecoverableParser<I, O, R, E> {
1331
    /// Collect all errors when parsing the input
1332
    ///
1333
    /// If `self` fails, this acts like [`Parser::resume_after`] and returns `Ok(None)`.
1334
    /// Generally, this should be avoided by using
1335
    /// [`Parser::retry_after`] and [`Parser::resume_after`] throughout your parser.
1336
    ///
1337
    /// The empty `input` is returned to allow turning the errors into [`ParserError`]s.
1338
    fn recoverable_parse(&mut self, input: I) -> (I, Option<O>, Vec<R>);
1339
}
1340
1341
#[cfg(feature = "unstable-recover")]
1342
#[cfg(feature = "std")]
1343
impl<P, I, O, R, E> RecoverableParser<I, O, R, E> for P
1344
where
1345
    P: Parser<Recoverable<I, R>, O, E>,
1346
    I: Stream,
1347
    I: StreamIsPartial,
1348
    R: FromRecoverableError<Recoverable<I, R>, E>,
1349
    R: crate::lib::std::fmt::Debug,
1350
    E: FromRecoverableError<Recoverable<I, R>, E>,
1351
    E: ParserError<Recoverable<I, R>>,
1352
    E: crate::lib::std::fmt::Debug,
1353
{
1354
    fn recoverable_parse(&mut self, input: I) -> (I, Option<O>, Vec<R>) {
1355
        debug_assert!(
1356
            !I::is_partial_supported(),
1357
            "partial streams need to handle `ErrMode::Incomplete`"
1358
        );
1359
1360
        let start = input.checkpoint();
1361
        let mut input = Recoverable::new(input);
1362
        let start_token = input.checkpoint();
1363
        let result = (
1364
            self.by_ref(),
1365
            crate::combinator::eof.resume_after(crate::token::rest.void()),
1366
        )
1367
            .parse_next(&mut input);
1368
1369
        let (o, err) = match result {
1370
            Ok((o, _)) => (Some(o), None),
1371
            Err(err) => {
1372
                let err_start = input.checkpoint();
1373
                let err = R::from_recoverable_error(&start_token, &err_start, &input, err);
1374
                (None, Some(err))
1375
            }
1376
        };
1377
1378
        let (mut input, mut errs) = input.into_parts();
1379
        input.reset(&start);
1380
        if let Some(err) = err {
1381
            errs.push(err);
1382
        }
1383
1384
        (input, o, errs)
1385
    }
1386
}
1387
1388
#[cfg(test)]
1389
mod tests {
1390
    use super::*;
1391
1392
    use snapbox::prelude::*;
1393
    use snapbox::str;
1394
1395
    use crate::binary::be_u16;
1396
    use crate::error::ErrMode;
1397
    use crate::error::Needed;
1398
    use crate::error::TestResult;
1399
    use crate::token::take;
1400
    use crate::Partial;
1401
1402
    #[doc(hidden)]
1403
    #[macro_export]
1404
    macro_rules! assert_size (
1405
    ($t:ty, $sz:expr) => (
1406
      assert!($crate::lib::std::mem::size_of::<$t>() <= $sz, "{} <= {} failed", $crate::lib::std::mem::size_of::<$t>(), $sz);
1407
    );
1408
  );
1409
1410
    #[test]
1411
    #[cfg(target_pointer_width = "64")]
1412
    fn size_test() {
1413
        assert_size!(Result<&[u8], (&[u8], u32)>, 40);
1414
        assert_size!(Result<&str, u32>, 40);
1415
        assert_size!(Needed, 8);
1416
        assert_size!(ErrMode<u32>, 16);
1417
    }
1418
1419
    #[test]
1420
    fn err_map_test() {
1421
        let e = ErrMode::Backtrack(1);
1422
        assert_eq!(e.map(|v| v + 1), ErrMode::Backtrack(2));
1423
    }
1424
1425
    #[test]
1426
    fn single_element_tuples() {
1427
        use crate::ascii::alpha1;
1428
1429
        let mut parser = (alpha1,);
1430
        assert_parse!(
1431
            parser.parse_peek("abc123def"),
1432
            str![[r#"
1433
Ok(
1434
    (
1435
        "123def",
1436
        (
1437
            "abc",
1438
        ),
1439
    ),
1440
)
1441
1442
"#]]
1443
            .raw()
1444
        );
1445
        assert_parse!(
1446
            parser.parse_peek("123def"),
1447
            str![[r#"
1448
Err(
1449
    Backtrack(
1450
        InputError {
1451
            input: "123def",
1452
        },
1453
    ),
1454
)
1455
1456
"#]]
1457
            .raw()
1458
        );
1459
    }
1460
1461
    #[test]
1462
    fn tuple_test() {
1463
        #[allow(clippy::type_complexity)]
1464
        fn tuple_3<'i>(
1465
            i: &mut Partial<&'i [u8]>,
1466
        ) -> TestResult<Partial<&'i [u8]>, (u16, &'i [u8], &'i [u8])> {
1467
            (be_u16, take(3u8), "fg").parse_next(i)
1468
        }
1469
1470
        assert_parse!(
1471
            tuple_3.parse_peek(Partial::new(&b"abcdefgh"[..])),
1472
            str![[r#"
1473
Ok(
1474
    (
1475
        Partial {
1476
            input: [
1477
                104,
1478
            ],
1479
            partial: true,
1480
        },
1481
        (
1482
            24930,
1483
            [
1484
                99,
1485
                100,
1486
                101,
1487
            ],
1488
            [
1489
                102,
1490
                103,
1491
            ],
1492
        ),
1493
    ),
1494
)
1495
1496
"#]]
1497
            .raw()
1498
        );
1499
        assert_parse!(
1500
            tuple_3.parse_peek(Partial::new(&b"abcd"[..])),
1501
            str![[r#"
1502
Err(
1503
    Incomplete(
1504
        Size(
1505
            1,
1506
        ),
1507
    ),
1508
)
1509
1510
"#]]
1511
            .raw()
1512
        );
1513
        assert_parse!(
1514
            tuple_3.parse_peek(Partial::new(&b"abcde"[..])),
1515
            str![[r#"
1516
Err(
1517
    Incomplete(
1518
        Unknown,
1519
    ),
1520
)
1521
1522
"#]]
1523
            .raw()
1524
        );
1525
        assert_parse!(
1526
            tuple_3.parse_peek(Partial::new(&b"abcdejk"[..])),
1527
            str![[r#"
1528
Err(
1529
    Backtrack(
1530
        InputError {
1531
            input: Partial {
1532
                input: [
1533
                    106,
1534
                    107,
1535
                ],
1536
                partial: true,
1537
            },
1538
        },
1539
    ),
1540
)
1541
1542
"#]]
1543
            .raw()
1544
        );
1545
    }
1546
1547
    #[test]
1548
    fn unit_type() {
1549
        fn parser<'i>(i: &mut &'i str) -> TestResult<&'i str, ()> {
1550
            ().parse_next(i)
1551
        }
1552
        assert_parse!(
1553
            parser.parse_peek("abxsbsh"),
1554
            str![[r#"
1555
Ok(
1556
    (
1557
        "abxsbsh",
1558
        (),
1559
    ),
1560
)
1561
1562
"#]]
1563
            .raw()
1564
        );
1565
        assert_parse!(
1566
            parser.parse_peek("sdfjakdsas"),
1567
            str![[r#"
1568
Ok(
1569
    (
1570
        "sdfjakdsas",
1571
        (),
1572
    ),
1573
)
1574
1575
"#]]
1576
            .raw()
1577
        );
1578
        assert_parse!(
1579
            parser.parse_peek(""),
1580
            str![[r#"
1581
Ok(
1582
    (
1583
        "",
1584
        (),
1585
    ),
1586
)
1587
1588
"#]]
1589
            .raw()
1590
        );
1591
    }
1592
}