tamer: src::pipeline: Eliminate most error type references
Just cleaning up a bit, removing some unnecessary types, since there are so many involved. DEV-13162main
parent
ea6259570e
commit
57a805b495
|
@ -31,7 +31,8 @@ pub mod util;
|
|||
|
||||
pub use error::{FinalizeError, ParseError};
|
||||
pub use lower::{
|
||||
lowerable, terminal, Lower, LowerIter, LowerSource, ParsedObject,
|
||||
lowerable, terminal, FromParseError, Lower, LowerIter, LowerSource,
|
||||
ParsedObject,
|
||||
};
|
||||
pub use parser::{FinalizedParser, Parsed, ParsedResult, Parser};
|
||||
pub use state::{
|
||||
|
|
|
@ -239,6 +239,16 @@ pub trait WidenedError<S: ParseState, LS: ParseState> = Diagnostic
|
|||
+ From<ParseError<<S as ParseState>::Token, <S as ParseState>::Error>>
|
||||
+ From<ParseError<<LS as ParseState>::Token, <LS as ParseState>::Error>>;
|
||||
|
||||
/// Convenience trait for converting [`From`] a [`ParseError`] for the
|
||||
/// provided [`ParseState`] `S`.
|
||||
///
|
||||
/// This allows specifying this type in terms of only the [`ParseState`]
|
||||
/// that is almost certainly already utilized,
|
||||
/// rather than having to either import more types or use the verbose
|
||||
/// associated type.
|
||||
pub trait FromParseError<S: ParseState> =
|
||||
From<ParseError<<S as ParseState>::Token, <S as ParseState>::Error>>;
|
||||
|
||||
/// A [`ParsedResult`](super::ParsedResult) with a [`WidenedError`].
|
||||
pub type WidenedParsedResult<S, E> =
|
||||
Result<Parsed<<S as ParseState>::Object>, E>;
|
||||
|
|
|
@ -41,21 +41,15 @@
|
|||
//! see [`Lower`].
|
||||
|
||||
use crate::{
|
||||
asg::{
|
||||
air::{Air, AirAggregate, AirAggregateCtx},
|
||||
AsgError,
|
||||
},
|
||||
asg::air::{AirAggregate, AirAggregateCtx},
|
||||
diagnose::Diagnostic,
|
||||
obj::xmlo::{
|
||||
XmloAirContext, XmloAirError, XmloError, XmloReader, XmloToAir,
|
||||
XmloToken,
|
||||
},
|
||||
obj::xmlo::{XmloAirContext, XmloReader, XmloToAir, XmloToken},
|
||||
parse::{
|
||||
FinalizeError, Lower, LowerSource, ParseError, Parsed, ParsedObject,
|
||||
UnknownToken,
|
||||
FinalizeError, FromParseError, Lower, LowerSource, ParseError, Parsed,
|
||||
ParsedObject, UnknownToken,
|
||||
},
|
||||
xir::{
|
||||
flat::{PartialXirToXirf, Text, XirToXirfError, XirfToken},
|
||||
flat::{PartialXirToXirf, Text},
|
||||
Error as XirError, Token as XirToken,
|
||||
},
|
||||
};
|
||||
|
@ -76,10 +70,10 @@ pub fn load_xmlo<EO: Diagnostic + PartialEq>(
|
|||
) -> Result<(AirAggregateCtx, XmloAirContext), EO>
|
||||
where
|
||||
EO: From<ParseError<UnknownToken, XirError>>
|
||||
+ From<ParseError<XirfToken<Text>, XmloError>>
|
||||
+ From<ParseError<XirToken, XirToXirfError>>
|
||||
+ From<ParseError<XmloToken, XmloAirError>>
|
||||
+ From<ParseError<Air, AsgError>>
|
||||
+ FromParseError<PartialXirToXirf<4, Text>>
|
||||
+ FromParseError<XmloReader>
|
||||
+ FromParseError<XmloToAir>
|
||||
+ FromParseError<AirAggregate>
|
||||
+ From<FinalizeError>,
|
||||
{
|
||||
// TODO: This entire block is a WIP and will be incrementally
|
||||
|
|
Loading…
Reference in New Issue