Improved streams

This commit is contained in:
Yehuda Katz
2019-05-23 21:34:43 -07:00
parent 625a356361
commit bf332ea50c
10 changed files with 100 additions and 31 deletions

View File

@@ -4,7 +4,7 @@ use crate::prelude::*;
use std::path::PathBuf;
pub struct CommandArgs {
pub host: Arc<Mutex<dyn Host>>,
pub host: Arc<Mutex<dyn Host + Send>>,
pub env: Arc<Mutex<Environment>>,
pub args: Vec<Value>,
pub input: InputStream,
@@ -37,12 +37,6 @@ pub enum ReturnValue {
}
impl ReturnValue {
crate fn single(value: Value) -> VecDeque<ReturnValue> {
let mut v = VecDeque::new();
v.push_back(ReturnValue::Value(value));
v
}
crate fn change_cwd(path: PathBuf) -> ReturnValue {
ReturnValue::Action(CommandAction::ChangeCwd(path))
}

View File

@@ -1,6 +1,5 @@
use crate::errors::ShellError;
use crate::prelude::*;
use futures::stream::BoxStream;
pub fn sort_by(args: CommandArgs) -> Result<OutputStream, ShellError> {
let fields: Result<Vec<_>, _> = args.args.iter().map(|a| a.as_string()).collect();