Bitcoin Core  27.99.0
P2P Digital Currency
Classes | Namespaces | Typedefs | Enumerations | Functions | Variables
subprocess.hpp File Reference
#include <algorithm>
#include <cassert>
#include <csignal>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <exception>
#include <future>
#include <initializer_list>
#include <iostream>
#include <locale>
#include <map>
#include <memory>
#include <sstream>
#include <string>
#include <vector>
#include <sys/wait.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/types.h>
Include dependency graph for subprocess.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  subprocess::CalledProcessError
 
class  subprocess::OSError
 
struct  subprocess::string_arg
 
struct  subprocess::executable
 
struct  subprocess::input
 
struct  subprocess::output
 
struct  subprocess::error
 
class  subprocess::Buffer
 
struct  subprocess::detail::param_pack< T >
 
struct  subprocess::detail::has_type< F, param_pack<> >
 
struct  subprocess::detail::has_type< F, param_pack< F, T... > >
 
struct  subprocess::detail::has_type< F, param_pack< H, T... > >
 
struct  subprocess::detail::ArgumentDeducer
 
class  subprocess::detail::Child
 
class  subprocess::detail::Communication
 
class  subprocess::detail::Streams
 
class  subprocess::Popen
 

Namespaces

 subprocess
 
 subprocess::util
 
 subprocess::detail
 

Typedefs

using subprocess::OutBuffer = Buffer
 
using subprocess::ErrBuffer = Buffer
 

Enumerations

enum  subprocess::IOTYPE { subprocess::STDOUT = 1 , subprocess::STDERR , subprocess::PIPE }
 

Functions

template<typename R >
bool subprocess::util::is_ready (std::shared_future< R > const &f)
 
void subprocess::util::quote_argument (const std::wstring &argument, std::wstring &command_line, bool force)
 
static std::vector< std::string > subprocess::util::split (const std::string &str, const std::string &delims=" \t")
 
static void subprocess::util::set_clo_on_exec (int fd, bool set=true)
 
static std::pair< int, int > subprocess::util::pipe_cloexec () noexcept(false)
 
static int subprocess::util::write_n (int fd, const char *buf, size_t length)
 
static int subprocess::util::read_atmost_n (FILE *fp, char *buf, size_t read_upto)
 
static int subprocess::util::read_all (FILE *fp, std::vector< char > &buf)
 
static std::pair< int, int > subprocess::util::wait_for_child_exit (int pid)
 

Variables

static const size_t subprocess::SP_MAX_ERR_BUF_SIZ = 1024
 
static const size_t subprocess::DEFAULT_BUF_CAP_BYTES = 8192