subprocess
0.1.0
Modern subprocess library for c++
|
Go to the documentation of this file.
3 #include <initializer_list>
126 int wait(
double timeout=-1);
151 PROCESS_INFORMATION process_info;
208 CompletedProcess
run(Popen& popen,
bool check=
false);
RunOptions options
Definition: ProcessBuilder.hpp:222
bool send_signal(int signal)
CommandLine command
Definition: ProcessBuilder.hpp:223
RunBuilder & check(bool ch)
Definition: ProcessBuilder.hpp:231
std::string windows_args()
double monotonic_seconds()
const PipeHandle kBadPipeValue
Definition: basic_types.hpp:68
RunBuilder & cout(const PipeVar &cout)
Definition: ProcessBuilder.hpp:235
CompletedProcess run(Popen &popen, bool check=false)
PipeOption cerr_option
Definition: ProcessBuilder.hpp:173
Popen()
Definition: ProcessBuilder.hpp:67
void close_cin()
Definition: ProcessBuilder.hpp:140
int returncode
Definition: ProcessBuilder.hpp:97
PipeOption cout_option
Definition: ProcessBuilder.hpp:172
PipeVar cin
Definition: ProcessBuilder.hpp:34
Popen run()
Definition: ProcessBuilder.hpp:184
void pipe_ignore_and_close(PipeHandle handle)
constexpr int kBadReturnCode
Definition: basic_types.hpp:81
PipeVar cerr
Definition: ProcessBuilder.hpp:46
CommandLine args
Definition: ProcessBuilder.hpp:98
RunBuilder & cerr(const PipeVar &cerr)
Definition: ProcessBuilder.hpp:237
PipeHandle cout
Definition: ProcessBuilder.hpp:88
Definition: ProcessBuilder.hpp:269
Definition: ProcessBuilder.hpp:221
RunBuilder & cwd(std::string cwd)
Definition: ProcessBuilder.hpp:239
std::vector< PipeHandle > child_close_pipes
Definition: ProcessBuilder.hpp:164
PipeHandle cerr
Definition: ProcessBuilder.hpp:92
Popen run_command(const CommandLine &command)
PipeOption
Definition: basic_types.hpp:87
int PipeHandle
Definition: basic_types.hpp:61
void ignore_output()
Definition: ProcessBuilder.hpp:105
pid_t pid
Definition: ProcessBuilder.hpp:95
void start()
Definition: ProcessBuilder.hpp:273
double sleep_seconds(double seconds)
Definition: ProcessBuilder.hpp:64
PipeHandle cerr_pipe
Definition: ProcessBuilder.hpp:168
int wait(double timeout=-1)
StopWatch()
Definition: ProcessBuilder.hpp:271
::pid_t pid_t
Definition: basic_types.hpp:62
CommandLine command
Definition: ProcessBuilder.hpp:178
std::string cwd
Definition: ProcessBuilder.hpp:49
void ignore_cout()
Definition: ProcessBuilder.hpp:101
RunBuilder & env(const EnvMap &env)
Definition: ProcessBuilder.hpp:241
double timeout
Definition: ProcessBuilder.hpp:57
Definition: ProcessBuilder.hpp:24
std::string windows_command()
Popen & operator=(const Popen &)=delete
PipeVar cout
Definition: ProcessBuilder.hpp:40
EnvMap env
Definition: ProcessBuilder.hpp:176
std::map< std::string, std::string > EnvMap
Definition: basic_types.hpp:84
PipeOption cin_option
Definition: ProcessBuilder.hpp:171
double seconds() const
Definition: ProcessBuilder.hpp:274
std::variant< PipeOption, std::string, PipeHandle, std::istream *, std::ostream *, FILE * > PipeVar
Definition: PipeVar.hpp:22
Definition: basic_types.hpp:148
bool pipe_close(PipeHandle handle)
PipeHandle cin_pipe
Definition: ProcessBuilder.hpp:166
void ignore_cerr()
Definition: ProcessBuilder.hpp:103
Definition: basic_types.hpp:19
Popen popen()
Definition: ProcessBuilder.hpp:256
std::vector< std::string > CommandLine
Definition: basic_types.hpp:83
PipeHandle cin
Definition: ProcessBuilder.hpp:84
PipeHandle cout_pipe
Definition: ProcessBuilder.hpp:167
RunBuilder()
Definition: ProcessBuilder.hpp:225
friend ProcessBuilder
Definition: ProcessBuilder.hpp:146
@ inherit
Inherits current process handle.
bool check
Definition: ProcessBuilder.hpp:28
RunBuilder(std::initializer_list< std::string > command)
Definition: ProcessBuilder.hpp:229
EnvMap env
Definition: ProcessBuilder.hpp:51
std::string cwd
Definition: ProcessBuilder.hpp:177
RunBuilder & timeout(double timeout)
Definition: ProcessBuilder.hpp:243
RunBuilder(CommandLine cmd)
Definition: ProcessBuilder.hpp:227
CompletedProcess run()
Definition: ProcessBuilder.hpp:251
RunBuilder & cin(const PipeVar &cin)
Definition: ProcessBuilder.hpp:233
Definition: ProcessBuilder.hpp:162