Return errors on unexpected inputs to take and first (#7123)

* Fix `take` behaviour for unexpected input types

* Fix `first` behaviour for unexpected input types

* Fix copy paste mistake
This commit is contained in:
Reilly Wood
2022-11-13 15:15:27 -08:00
committed by GitHub
parent 35f9299fc6
commit 336df6c65e
6 changed files with 177 additions and 168 deletions

View File

@ -89,6 +89,15 @@ impl PipelineData {
matches!(self, PipelineData::Value(Value::Nothing { .. }, ..))
}
/// PipelineData doesn't always have a Span, but we can try!
pub fn span(&self) -> Option<Span> {
match self {
PipelineData::ListStream(..) => None,
PipelineData::ExternalStream { span, .. } => Some(*span),
PipelineData::Value(v, _) => v.span().ok(),
}
}
pub fn into_value(self, span: Span) -> Value {
match self {
PipelineData::Value(Value::Nothing { .. }, ..) => Value::nothing(span),