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 }