1 module eventcore.drivers.winapi.processes; 2 3 version (Windows): 4 5 import eventcore.driver; 6 import eventcore.internal.win32; 7 8 final class WinAPIEventDriverProcesses : EventDriverProcesses { 9 @safe: /*@nogc:*/ nothrow: 10 override ProcessID adopt(int system_pid) 11 { 12 assert(false, "TODO!"); 13 } 14 15 override Process spawn(string[] args, ProcessStdinFile stdin, ProcessStdoutFile stdout, ProcessStderrFile stderr, const string[string] env, ProcessConfig config, string working_dir) 16 { 17 assert(false, "TODO!"); 18 } 19 20 override bool hasExited(ProcessID pid) 21 { 22 if (!isValid(pid)) return true; 23 24 assert(false, "TODO!"); 25 } 26 27 override void kill(ProcessID pid, int signal) 28 { 29 if (!isValid(pid)) return; 30 31 assert(false, "TODO!"); 32 } 33 34 override size_t wait(ProcessID pid, ProcessWaitCallback on_process_exit) 35 { 36 if (!isValid(pid)) return size_t.max; 37 38 assert(false, "TODO!"); 39 } 40 41 override void cancelWait(ProcessID pid, size_t waitId) 42 { 43 if (!isValid(pid)) return; 44 45 assert(false, "TODO!"); 46 } 47 48 override bool isValid(ProcessID handle) 49 const { 50 return false; 51 } 52 53 override void addRef(ProcessID pid) 54 { 55 if (!isValid(pid)) return; 56 57 assert(false, "TODO!"); 58 } 59 60 override bool releaseRef(ProcessID pid) 61 { 62 if (!isValid(pid)) return true; 63 64 assert(false, "TODO!"); 65 } 66 67 protected override void* rawUserData(ProcessID descriptor, size_t size, DataInitializer initialize, DataInitializer destroy) 68 @system { 69 assert(false, "TODO!"); 70 } 71 }