1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
use indexmap::IndexMap;
use shirabe_php_shim::PhpMixed;
#[derive(Debug)]
pub struct Process;
impl Process {
pub const ERR: &'static str = "err";
pub const OUT: &'static str = "out";
pub fn new(
command: Vec<String>,
cwd: Option<String>,
env: Option<IndexMap<String, String>>,
input: Option<String>,
timeout: Option<f64>,
) -> Self {
todo!()
}
pub fn from_shell_commandline(
command: &str,
cwd: Option<&str>,
env: Option<IndexMap<String, String>>,
input: Option<String>,
timeout: Option<f64>,
) -> Self {
todo!()
}
pub fn set_timeout(&mut self, timeout: Option<f64>) -> &mut Self {
todo!()
}
pub fn set_env(&mut self, env: IndexMap<String, String>) -> &mut Self {
todo!()
}
pub fn set_input(&mut self, input: Option<String>) -> &mut Self {
todo!()
}
pub fn run(&mut self, callback: Option<Box<dyn FnMut(&str, &str)>>) -> i64 {
todo!()
}
pub fn must_run(
&mut self,
callback: Option<Box<dyn FnMut(&str, &str)>>,
) -> anyhow::Result<&mut Self> {
todo!()
}
pub fn start(&mut self, callback: Option<Box<dyn FnMut(&str, &str)>>) {
todo!()
}
pub fn wait(&mut self, callback: Option<Box<dyn FnMut(&str, &str)>>) -> i64 {
todo!()
}
pub fn stop(&mut self, timeout: f64, signal: Option<i64>) -> Option<i64> {
todo!()
}
pub fn is_running(&self) -> bool {
todo!()
}
pub fn is_successful(&self) -> bool {
todo!()
}
pub fn is_started(&self) -> bool {
todo!()
}
pub fn is_terminated(&self) -> bool {
todo!()
}
pub fn get_output(&self) -> String {
todo!()
}
pub fn get_error_output(&self) -> String {
todo!()
}
pub fn get_exit_code(&self) -> Option<i64> {
todo!()
}
pub fn get_exit_code_text(&self) -> Option<String> {
todo!()
}
pub fn get_command_line(&self) -> String {
todo!()
}
pub fn check_timeout(&self) -> anyhow::Result<()> {
todo!()
}
pub fn get_timeout(&self) -> Option<f64> {
todo!()
}
pub fn set_working_directory(&mut self, cwd: &str) -> &mut Self {
todo!()
}
}
|