Add from csv and from tsv (#320)

This commit is contained in:
JT
2021-11-10 09:17:37 +13:00
committed by GitHub
parent 0f516a0830
commit bb1740d733
13 changed files with 277 additions and 14 deletions

View File

@ -51,10 +51,10 @@ impl PipelineData {
}
}
pub fn collect_string(self) -> String {
pub fn collect_string(self, separator: &str) -> String {
match self {
PipelineData::Value(v) => v.into_string("\n"),
PipelineData::Stream(s) => s.into_string("\n"),
PipelineData::Value(v) => v.into_string(separator),
PipelineData::Stream(s) => s.into_string(separator),
}
}

View File

@ -60,6 +60,10 @@ pub enum ShellError {
right_span: Span,
},
#[error("Delimiter error")]
#[diagnostic(code(nu::shell::delimiter_error), url(docsrs))]
DelimiterError(String, #[label("{0}")] Span),
#[error("Incompatible parameters.")]
#[diagnostic(code(nu::shell::incompatible_parameters), url(docsrs))]
IncompatibleParametersSingle(String, #[label = "{0}"] Span),

View File

@ -20,12 +20,9 @@ pub struct ValueStream {
impl ValueStream {
pub fn into_string(self, separator: &str) -> String {
format!(
"[{}]",
self.map(|x: Value| x.into_string(", "))
.collect::<Vec<String>>()
.join(separator)
)
self.map(|x: Value| x.into_string(", "))
.collect::<Vec<String>>()
.join(separator)
}
pub fn from_stream(