Isolate feature.

This commit is contained in:
Andrés N. Robalino 2019-11-03 16:36:47 -05:00
parent 392ff286b2
commit 889d2bb378
5 changed files with 18 additions and 2 deletions

View file

@ -262,7 +262,6 @@ Nu adheres closely to a set of goals that make up its design philosophy. As feat
| pivot --header-row <headers> | Pivot the tables, making columns into rows and vice versa | | pivot --header-row <headers> | Pivot the tables, making columns into rows and vice versa |
| reject ...columns | Remove the given columns from the table | | reject ...columns | Remove the given columns from the table |
| reverse | Reverses the table. | | reverse | Reverses the table. |
| split-by column | Creates a new table with the data from the inner tables splitted by the column given |
| skip amount | Skip a number of rows | | skip amount | Skip a number of rows |
| skip-while condition | Skips rows while the condition matches. | | skip-while condition | Skips rows while the condition matches. |
| sort-by ...columns | Sort by the given columns | | sort-by ...columns | Sort by the given columns |

View file

@ -11,3 +11,11 @@ This is laying the groundwork for merging coloring and parsing. It also makes to
work with coloring, which is pretty useful on its own. work with coloring, which is pretty useful on its own.
""" """
enabled = false enabled = false
[data_processing_primitives]
description = "Groundwork so tables can be data processed"
reason = """
These will allow take tables and be able to transform, process, and explore.
"""
enabled = false

View file

@ -259,7 +259,6 @@ pub async fn cli() -> Result<(), Box<dyn Error>> {
whole_stream_command(Previous), whole_stream_command(Previous),
whole_stream_command(Debug), whole_stream_command(Debug),
whole_stream_command(Shells), whole_stream_command(Shells),
whole_stream_command(SplitBy),
whole_stream_command(SplitColumn), whole_stream_command(SplitColumn),
whole_stream_command(SplitRow), whole_stream_command(SplitRow),
whole_stream_command(Lines), whole_stream_command(Lines),
@ -319,6 +318,8 @@ pub async fn cli() -> Result<(), Box<dyn Error>> {
whole_stream_command(Table), whole_stream_command(Table),
whole_stream_command(Version), whole_stream_command(Version),
whole_stream_command(Which), whole_stream_command(Which),
#[cfg(data_processing_primitives)]
whole_stream_command(SplitBy),
]); ]);
#[cfg(feature = "clipboard")] #[cfg(feature = "clipboard")]

View file

@ -55,7 +55,10 @@ pub(crate) mod shells;
pub(crate) mod size; pub(crate) mod size;
pub(crate) mod skip_while; pub(crate) mod skip_while;
pub(crate) mod sort_by; pub(crate) mod sort_by;
#[cfg(data_processing_primitives)]
pub(crate) mod split_by; pub(crate) mod split_by;
pub(crate) mod split_column; pub(crate) mod split_column;
pub(crate) mod split_row; pub(crate) mod split_row;
pub(crate) mod table; pub(crate) mod table;
@ -130,7 +133,10 @@ pub(crate) use shells::Shells;
pub(crate) use size::Size; pub(crate) use size::Size;
pub(crate) use skip_while::SkipWhile; pub(crate) use skip_while::SkipWhile;
pub(crate) use sort_by::SortBy; pub(crate) use sort_by::SortBy;
#[cfg(data_processing_primitives)]
pub(crate) use split_by::SplitBy; pub(crate) use split_by::SplitBy;
pub(crate) use split_column::SplitColumn; pub(crate) use split_column::SplitColumn;
pub(crate) use split_row::SplitRow; pub(crate) use split_row::SplitRow;
pub(crate) use table::Table; pub(crate) use table::Table;

View file

@ -56,6 +56,7 @@ fn group_by_errors_if_unknown_column_name() {
}) })
} }
#[cfg(data_processing_primitives)]
#[test] #[test]
fn split_by() { fn split_by() {
Playground::setup("split_by_test_1", |dirs, sandbox| { Playground::setup("split_by_test_1", |dirs, sandbox| {
@ -85,6 +86,7 @@ fn split_by() {
}) })
} }
#[cfg(data_processing_primitives)]
#[test] #[test]
fn split_by_errors_if_no_table_given_as_input() { fn split_by_errors_if_no_table_given_as_input() {
Playground::setup("split_by_test_2", |dirs, sandbox| { Playground::setup("split_by_test_2", |dirs, sandbox| {