Skip to content

Commit 93fc441

Browse files
committed
Switch off deprecated VerboseError
1 parent df226dd commit 93fc441

File tree

1 file changed

+11
-25
lines changed

1 file changed

+11
-25
lines changed

gix-object/src/lib.rs

Lines changed: 11 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -258,38 +258,26 @@ pub struct Data<'a> {
258258
pub mod decode {
259259
#[cfg(feature = "verbose-object-parsing-errors")]
260260
mod _decode {
261-
use crate::bstr::{BString, ByteSlice};
262-
263261
/// The type to be used for parse errors.
264-
pub type ParseError<'a> = winnow::error::VerboseError<&'a [u8], winnow::error::StrContext>;
265-
/// The owned type to be used for parse errors.
266-
pub type ParseErrorOwned = winnow::error::VerboseError<BString, winnow::error::StrContext>;
262+
pub type ParseError = winnow::error::ContextError<winnow::error::StrContext>;
267263

268264
pub(crate) fn empty_error() -> Error {
269265
Error {
270-
inner: winnow::error::VerboseError::<_, _> { errors: Vec::new() },
266+
inner: winnow::error::ContextError::new(),
271267
}
272268
}
273269

274270
/// A type to indicate errors during parsing and to abstract away details related to `nom`.
275271
#[derive(Debug, Clone)]
276272
pub struct Error {
277273
/// The actual error
278-
pub inner: ParseErrorOwned,
274+
pub inner: ParseError,
279275
}
280276

281-
impl<'a> From<winnow::error::ErrMode<ParseError<'a>>> for Error {
282-
fn from(v: winnow::error::ErrMode<ParseError<'a>>) -> Self {
277+
impl From<winnow::error::ErrMode<ParseError>> for Error {
278+
fn from(v: winnow::error::ErrMode<ParseError>) -> Self {
283279
let err = v.into_inner().expect("we don't have streaming parsers");
284-
Error {
285-
inner: winnow::error::VerboseError {
286-
errors: err
287-
.errors
288-
.into_iter()
289-
.map(|(i, v)| (i.as_bstr().to_owned(), v))
290-
.collect(),
291-
},
292-
}
280+
Error { inner: err }
293281
}
294282
}
295283

@@ -304,9 +292,7 @@ pub mod decode {
304292
#[cfg(not(feature = "verbose-object-parsing-errors"))]
305293
mod _decode {
306294
/// The type to be used for parse errors, discards everything and is zero size
307-
pub type ParseError<'a> = ();
308-
/// The owned type to be used for parse errors, discards everything and is zero size
309-
pub type ParseErrorOwned = ();
295+
pub type ParseError = ();
310296

311297
pub(crate) fn empty_error() -> Error {
312298
Error { inner: () }
@@ -316,11 +302,11 @@ pub mod decode {
316302
#[derive(Debug, Clone)]
317303
pub struct Error {
318304
/// The actual error
319-
pub inner: ParseErrorOwned,
305+
pub inner: ParseError,
320306
}
321307

322-
impl<'a> From<winnow::error::ErrMode<ParseError<'a>>> for Error {
323-
fn from(v: winnow::error::ErrMode<ParseError<'a>>) -> Self {
308+
impl From<winnow::error::ErrMode<ParseError>> for Error {
309+
fn from(v: winnow::error::ErrMode<ParseError>) -> Self {
324310
let err = v.into_inner().expect("we don't have streaming parsers");
325311
Error { inner: err }
326312
}
@@ -333,7 +319,7 @@ pub mod decode {
333319
}
334320
}
335321
pub(crate) use _decode::empty_error;
336-
pub use _decode::{Error, ParseError, ParseErrorOwned};
322+
pub use _decode::{Error, ParseError};
337323
impl std::error::Error for Error {}
338324

339325
/// Returned by [`loose_header()`]

0 commit comments

Comments
 (0)