forked from extern/nushell
Convert Shellerror::GenericError
to named fields (#11230)
# Description Replace `.to_string()` used in `GenericError` with `.into()` as `.into()` seems more popular Replace `Vec::new()` used in `GenericError` with `vec![]` as `vec![]` seems more popular (There are so, so many)
This commit is contained in:
@@ -732,13 +732,13 @@ Operating system commands:
|
||||
None => Color::White.prefix().to_string(),
|
||||
},
|
||||
Err(err) => {
|
||||
return Err(ShellError::GenericError(
|
||||
"error parsing hex color".to_string(),
|
||||
format!("{err}"),
|
||||
Some(code.span()),
|
||||
None,
|
||||
Vec::new(),
|
||||
));
|
||||
return Err(ShellError::GenericError {
|
||||
error: "error parsing hex color".into(),
|
||||
msg: format!("{err}"),
|
||||
span: Some(code.span()),
|
||||
help: None,
|
||||
inner: vec![],
|
||||
});
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
@@ -90,14 +90,12 @@ There are 4 `key_type` variants:
|
||||
terminal::enable_raw_mode()?;
|
||||
let console_state = event_type_filter.enable_events()?;
|
||||
loop {
|
||||
let event = crossterm::event::read().map_err(|_| {
|
||||
ShellError::GenericError(
|
||||
"Error with user input".to_string(),
|
||||
"".to_string(),
|
||||
Some(head),
|
||||
None,
|
||||
Vec::new(),
|
||||
)
|
||||
let event = crossterm::event::read().map_err(|_| ShellError::GenericError {
|
||||
error: "Error with user input".into(),
|
||||
msg: "".into(),
|
||||
span: Some(head),
|
||||
help: None,
|
||||
inner: vec![],
|
||||
})?;
|
||||
let event = parse_event(head, &event, &event_type_filter, add_raw);
|
||||
if let Some(event) = event {
|
||||
|
@@ -92,27 +92,23 @@ impl Command for Kill {
|
||||
left_message: "force".to_string(),
|
||||
left_span: call
|
||||
.get_named_arg("force")
|
||||
.ok_or_else(|| {
|
||||
ShellError::GenericError(
|
||||
"Flag error".into(),
|
||||
"flag force not found".into(),
|
||||
Some(call.head),
|
||||
None,
|
||||
Vec::new(),
|
||||
)
|
||||
.ok_or_else(|| ShellError::GenericError {
|
||||
error: "Flag error".into(),
|
||||
msg: "flag force not found".into(),
|
||||
span: Some(call.head),
|
||||
help: None,
|
||||
inner: vec![],
|
||||
})?
|
||||
.span,
|
||||
right_message: "signal".to_string(),
|
||||
right_span: span(&[
|
||||
call.get_named_arg("signal")
|
||||
.ok_or_else(|| {
|
||||
ShellError::GenericError(
|
||||
"Flag error".into(),
|
||||
"flag signal not found".into(),
|
||||
Some(call.head),
|
||||
None,
|
||||
Vec::new(),
|
||||
)
|
||||
.ok_or_else(|| ShellError::GenericError {
|
||||
error: "Flag error".into(),
|
||||
msg: "flag signal not found".into(),
|
||||
span: Some(call.head),
|
||||
help: None,
|
||||
inner: vec![],
|
||||
})?
|
||||
.span,
|
||||
signal_span,
|
||||
@@ -138,36 +134,32 @@ impl Command for Kill {
|
||||
.stderr(Stdio::null());
|
||||
}
|
||||
|
||||
let output = cmd.output().map_err(|e| {
|
||||
ShellError::GenericError(
|
||||
"failed to execute shell command".into(),
|
||||
e.to_string(),
|
||||
Some(call.head),
|
||||
None,
|
||||
Vec::new(),
|
||||
)
|
||||
let output = cmd.output().map_err(|e| ShellError::GenericError {
|
||||
error: "failed to execute shell command".into(),
|
||||
msg: e.to_string(),
|
||||
span: Some(call.head),
|
||||
help: None,
|
||||
inner: vec![],
|
||||
})?;
|
||||
|
||||
if !quiet && !output.status.success() {
|
||||
return Err(ShellError::GenericError(
|
||||
"process didn't terminate successfully".into(),
|
||||
String::from_utf8(output.stderr).unwrap_or_default(),
|
||||
Some(call.head),
|
||||
None,
|
||||
Vec::new(),
|
||||
));
|
||||
return Err(ShellError::GenericError {
|
||||
error: "process didn't terminate successfully".into(),
|
||||
msg: String::from_utf8(output.stderr).unwrap_or_default(),
|
||||
span: Some(call.head),
|
||||
help: None,
|
||||
inner: vec![],
|
||||
});
|
||||
}
|
||||
|
||||
let val = String::from(
|
||||
String::from_utf8(output.stdout)
|
||||
.map_err(|e| {
|
||||
ShellError::GenericError(
|
||||
"failed to convert output to string".into(),
|
||||
e.to_string(),
|
||||
Some(call.head),
|
||||
None,
|
||||
Vec::new(),
|
||||
)
|
||||
.map_err(|e| ShellError::GenericError {
|
||||
error: "failed to convert output to string".into(),
|
||||
msg: e.to_string(),
|
||||
span: Some(call.head),
|
||||
help: None,
|
||||
inner: vec![],
|
||||
})?
|
||||
.trim_end(),
|
||||
);
|
||||
|
@@ -36,14 +36,14 @@ impl Command for Whoami {
|
||||
) -> Result<PipelineData, ShellError> {
|
||||
let output = match uu_whoami::whoami() {
|
||||
Ok(username) => username.to_string_lossy().to_string(),
|
||||
Err(err) => {
|
||||
return Err(ShellError::GenericError(
|
||||
"Failed to get username".into(),
|
||||
err.to_string(),
|
||||
Some(call.head),
|
||||
None,
|
||||
Vec::new(),
|
||||
))
|
||||
Err(e) => {
|
||||
return Err(ShellError::GenericError {
|
||||
error: "Failed to get username".into(),
|
||||
msg: e.to_string(),
|
||||
span: Some(call.head),
|
||||
help: None,
|
||||
inner: vec![],
|
||||
})
|
||||
}
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user