subprocess
0.4.0
Modern subprocess library for c++
|
Go to the documentation of this file.
3 #include <initializer_list>
129 int wait(
double timeout=-1);
163 PROCESS_INFORMATION process_info;
224 CompletedProcess
run(Popen& popen,
bool check=
false);
RunOptions options
Definition: ProcessBuilder.hpp:238
bool send_signal(int signal)
CommandLine command
Definition: ProcessBuilder.hpp:239
RunBuilder & check(bool ch)
Definition: ProcessBuilder.hpp:247
std::string windows_args()
double monotonic_seconds()
const PipeHandle kBadPipeValue
Definition: basic_types.hpp:81
RunBuilder & cout(const PipeVar &cout)
Definition: ProcessBuilder.hpp:251
CompletedProcess run(Popen &popen, bool check=false)
PipeOption cerr_option
Definition: ProcessBuilder.hpp:185
Popen()
Definition: ProcessBuilder.hpp:70
void close_cin()
Definition: ProcessBuilder.hpp:152
int returncode
Definition: ProcessBuilder.hpp:100
PipeOption cout_option
Definition: ProcessBuilder.hpp:184
PipeVar cin
Definition: ProcessBuilder.hpp:34
Popen run()
Definition: ProcessBuilder.hpp:197
void pipe_ignore_and_close(PipeHandle handle)
constexpr int kBadReturnCode
Definition: basic_types.hpp:94
PipeVar cerr
Definition: ProcessBuilder.hpp:46
CommandLine args
Definition: ProcessBuilder.hpp:101
RunBuilder & cerr(const PipeVar &cerr)
Definition: ProcessBuilder.hpp:253
PipeHandle cout
Definition: ProcessBuilder.hpp:91
Definition: ProcessBuilder.hpp:291
Definition: ProcessBuilder.hpp:237
RunBuilder & cwd(std::string cwd)
Definition: ProcessBuilder.hpp:255
std::vector< PipeHandle > child_close_pipes
Definition: ProcessBuilder.hpp:176
PipeHandle cerr
Definition: ProcessBuilder.hpp:95
Popen run_command(const CommandLine &command)
PipeOption
Definition: basic_types.hpp:100
int PipeHandle
Definition: basic_types.hpp:74
RunBuilder & new_process_group(bool new_group)
Definition: ProcessBuilder.hpp:266
void ignore_output()
Definition: ProcessBuilder.hpp:108
pid_t pid
Definition: ProcessBuilder.hpp:98
void start()
Definition: ProcessBuilder.hpp:295
double sleep_seconds(double seconds)
Definition: ProcessBuilder.hpp:67
PipeHandle cerr_pipe
Definition: ProcessBuilder.hpp:180
int wait(double timeout=-1)
StopWatch()
Definition: ProcessBuilder.hpp:293
::pid_t pid_t
Definition: basic_types.hpp:75
CommandLine command
Definition: ProcessBuilder.hpp:191
std::string cwd
Definition: ProcessBuilder.hpp:52
void ignore_cout()
Definition: ProcessBuilder.hpp:104
RunBuilder & env(const EnvMap &env)
Definition: ProcessBuilder.hpp:257
double timeout
Definition: ProcessBuilder.hpp:60
bool new_process_group
Definition: ProcessBuilder.hpp:49
Definition: ProcessBuilder.hpp:24
std::string windows_command()
Popen & operator=(const Popen &)=delete
PipeVar cout
Definition: ProcessBuilder.hpp:40
EnvMap env
Definition: ProcessBuilder.hpp:189
std::map< std::string, std::string > EnvMap
Definition: basic_types.hpp:97
PipeOption cin_option
Definition: ProcessBuilder.hpp:183
double seconds() const
Definition: ProcessBuilder.hpp:296
std::variant< PipeOption, std::string, PipeHandle, std::istream *, std::ostream *, FILE * > PipeVar
Definition: PipeVar.hpp:22
Definition: basic_types.hpp:161
bool pipe_close(PipeHandle handle)
PipeHandle cin_pipe
Definition: ProcessBuilder.hpp:178
void ignore_cerr()
Definition: ProcessBuilder.hpp:106
Definition: basic_types.hpp:19
Popen popen()
Definition: ProcessBuilder.hpp:278
std::vector< std::string > CommandLine
Definition: basic_types.hpp:96
PipeHandle cin
Definition: ProcessBuilder.hpp:87
PipeHandle cout_pipe
Definition: ProcessBuilder.hpp:179
RunBuilder()
Definition: ProcessBuilder.hpp:241
friend ProcessBuilder
Definition: ProcessBuilder.hpp:158
@ inherit
Inherits current process handle.
bool check
Definition: ProcessBuilder.hpp:28
RunBuilder(std::initializer_list< std::string > command)
Definition: ProcessBuilder.hpp:245
EnvMap env
Definition: ProcessBuilder.hpp:54
std::string cwd
Definition: ProcessBuilder.hpp:190
RunBuilder & timeout(double timeout)
Definition: ProcessBuilder.hpp:259
RunBuilder(CommandLine cmd)
Definition: ProcessBuilder.hpp:243
CompletedProcess run()
Definition: ProcessBuilder.hpp:273
RunBuilder & cin(const PipeVar &cin)
Definition: ProcessBuilder.hpp:249
Definition: ProcessBuilder.hpp:174
bool new_process_group
Definition: ProcessBuilder.hpp:187