Parse Error return an Error instead of a successful empty response
This commit is contained in:
parent
34067a1c4c
commit
8c32a9d909
12
src/lib.rs
12
src/lib.rs
@ -132,6 +132,9 @@ pub enum ErrorKind {
|
||||
/// An io error during reading or writing.
|
||||
#[fail(display = "io error: {}", _0)]
|
||||
IoError(io::Error),
|
||||
/// Parse error occured when parsing the Input.
|
||||
#[fail(display = "parse error")]
|
||||
ParseError,
|
||||
/// The user mandated a version and the current version of Rustfmt does not
|
||||
/// satisfy that requirement.
|
||||
#[fail(display = "Version mismatch")]
|
||||
@ -172,9 +175,10 @@ fn from_span(span: &Span, codemap: &CodeMap, kind: ErrorKind) -> FormattingError
|
||||
}
|
||||
fn msg_prefix(&self) -> &str {
|
||||
match self.kind {
|
||||
ErrorKind::LineOverflow(..) | ErrorKind::TrailingWhitespace | ErrorKind::IoError(_) => {
|
||||
"internal error:"
|
||||
}
|
||||
ErrorKind::LineOverflow(..)
|
||||
| ErrorKind::TrailingWhitespace
|
||||
| ErrorKind::IoError(_)
|
||||
| ErrorKind::ParseError => "internal error:",
|
||||
ErrorKind::LicenseCheck | ErrorKind::BadAttr | ErrorKind::VersionMismatch => "error:",
|
||||
ErrorKind::BadIssue(_) | ErrorKind::DeprecatedAttr => "warning:",
|
||||
}
|
||||
@ -844,7 +848,7 @@ fn format_input_inner<T: Write>(
|
||||
ParseError::Recovered => {}
|
||||
}
|
||||
summary.add_parsing_error();
|
||||
return Ok((summary, FileMap::new(), FormatReport::new()));
|
||||
return Err((ErrorKind::ParseError, summary));
|
||||
}
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user