Reduced LOC by replacing several instances of Value::Int {}, Value::Float{}, Value::Bool {}, and Value::String {} with Value::int(), Value::float(), Value::boolean() and Value::string() (#7412)

# Description

While perusing Value.rs, I noticed the `Value::int()`, `Value::float()`,
`Value::boolean()` and `Value::string()` constructors, which seem
designed to make it easier to construct various Values, but which aren't
used often at all in the codebase. So, using a few find-replaces
regexes, I increased their usage. This reduces overall LOC because
structures like this:
```
Value::Int {
  val: a,
  span: head
}
```
are changed into
```
Value::int(a, head)
```
and are respected as such by the project's formatter.
There are little readability concerns because the second argument to all
of these is `span`, and it's almost always extremely obvious which is
the span at every callsite.

# User-Facing Changes

None.

# Tests + Formatting

Don't forget to add tests that cover your changes.

Make sure you've run and fixed any issues with these commands:

- `cargo fmt --all -- --check` to check standard code formatting (`cargo
fmt --all` applies these changes)
- `cargo clippy --workspace -- -D warnings -D clippy::unwrap_used -A
clippy::needless_collect` to check that you're using the standard code
style
- `cargo test --workspace` to check that all tests pass

# After Submitting

If your PR had any user-facing changes, update [the
documentation](https://github.com/nushell/nushell.github.io) after the
PR is merged, if necessary. This will help us keep the docs up to date.
This commit is contained in:
Leon
2022-12-10 02:37:51 +10:00
committed by GitHub
parent b56ad92e25
commit 220b105efb
139 changed files with 540 additions and 2141 deletions

View File

@ -30,14 +30,8 @@ impl Command for ColumnsDF {
example: "[[a b]; [1 2] [3 4]] | into df | columns",
result: Some(Value::List {
vals: vec![
Value::String {
val: "a".into(),
span: Span::test_data(),
},
Value::String {
val: "b".into(),
span: Span::test_data(),
},
Value::string("a", Span::test_data()),
Value::string("b", Span::test_data()),
],
span: Span::test_data(),
}),
@ -67,10 +61,7 @@ fn command(
.as_ref()
.get_column_names()
.iter()
.map(|v| Value::String {
val: v.to_string(),
span: call.head,
})
.map(|v| Value::string(*v, call.head))
.collect();
let names = Value::List {

View File

@ -82,10 +82,7 @@ fn command(
span: call.head,
});
Value::String {
val: v.to_string(),
span: call.head,
}
Value::string(*v, call.head)
})
.collect();

View File

@ -61,15 +61,9 @@ impl Command for ListDF {
span: call.head,
};
let columns = Value::Int {
val: df.as_ref().width() as i64,
span: call.head,
};
let columns = Value::int(df.as_ref().width() as i64, call.head);
let rows = Value::Int {
val: df.as_ref().height() as i64,
span: call.head,
};
let rows = Value::int(df.as_ref().height() as i64, call.head);
let cols = vec![
"name".to_string(),

View File

@ -61,15 +61,9 @@ fn command(
) -> Result<PipelineData, ShellError> {
let df = NuDataFrame::try_from_pipeline(input, call.head)?;
let rows = Value::Int {
val: df.as_ref().height() as i64,
span: call.head,
};
let rows = Value::int(df.as_ref().height() as i64, call.head);
let cols = Value::Int {
val: df.as_ref().width() as i64,
span: call.head,
};
let cols = Value::int(df.as_ref().width() as i64, call.head);
let rows_col = Column::new("rows".to_string(), vec![rows]);
let cols_col = Column::new("columns".to_string(), vec![cols]);

View File

@ -32,14 +32,8 @@ impl Command for ExprAsNu {
result: Some(Value::Record {
cols: vec!["expr".into(), "value".into()],
vals: vec![
Value::String {
val: "column".into(),
span: Span::test_data(),
},
Value::String {
val: "a".into(),
span: Span::test_data(),
},
Value::string("column", Span::test_data()),
Value::string("a", Span::test_data()),
],
span: Span::test_data(),
}),

View File

@ -38,14 +38,8 @@ impl Command for ExprCol {
result: Some(Value::Record {
cols: vec!["expr".into(), "value".into()],
vals: vec![
Value::String {
val: "column".into(),
span: Span::test_data(),
},
Value::String {
val: "a".into(),
span: Span::test_data(),
},
Value::string("column", Span::test_data()),
Value::string("a", Span::test_data()),
],
span: Span::test_data(),
}),

View File

@ -37,14 +37,8 @@ impl Command for ExprLit {
result: Some(Value::Record {
cols: vec!["expr".into(), "value".into()],
vals: vec![
Value::String {
val: "literal".into(),
span: Span::test_data(),
},
Value::String {
val: "2i64".into(),
span: Span::test_data(),
},
Value::string("literal", Span::test_data()),
Value::string("2i64", Span::test_data()),
],
span: Span::test_data(),
}),

View File

@ -86,10 +86,7 @@ fn command(
)
})?;
let value = Value::Bool {
val: !bool.any(),
span: call.head,
};
let value = Value::boolean(!bool.any(), call.head);
NuDataFrame::try_from_columns(vec![Column::new("all_false".to_string(), vec![value])])
.map(|df| PipelineData::Value(NuDataFrame::into_value(df, call.head), None))

View File

@ -86,10 +86,7 @@ fn command(
)
})?;
let value = Value::Bool {
val: bool.all(),
span: call.head,
};
let value = Value::boolean(bool.all(), call.head);
NuDataFrame::try_from_columns(vec![Column::new("all_true".to_string(), vec![value])])
.map(|df| PipelineData::Value(NuDataFrame::into_value(df, call.head), None))

View File

@ -61,10 +61,7 @@ fn command(
let df = NuDataFrame::try_from_pipeline(input, call.head)?;
let res = df.as_series(call.head)?.null_count();
let value = Value::Int {
val: res as i64,
span: call.head,
};
let value = Value::int(res as i64, call.head);
NuDataFrame::try_from_columns(vec![Column::new("count_null".to_string(), vec![value])])
.map(|df| PipelineData::Value(NuDataFrame::into_value(df, call.head), None))

View File

@ -67,10 +67,7 @@ fn command(
)
})?;
let value = Value::Int {
val: res as i64,
span: call.head,
};
let value = Value::int(res as i64, call.head);
NuDataFrame::try_from_columns(vec![Column::new("count_unique".to_string(), vec![value])])
.map(|df| PipelineData::Value(NuDataFrame::into_value(df, call.head), None))