MCPcopy Create free account
hub / github.com/covscript/covscript / fork

Method fork

sources/covscript.cpp:156–169  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

154 }
155
156 std::unique_ptr<process_context> process_context::fork()
157 {
158 std::unique_ptr<process_context> new_process(new process_context(current_process->child_stack_size()));
159 new_process->output_precision = current_process->output_precision;
160 new_process->import_path = current_process->import_path;
161 process_context *curr = current_process;
162 new_process->on_process_exit.add_listener([curr](void *data) -> bool
163 { return curr->on_process_exit.touch(data); });
164 new_process->on_process_sigint.add_listener([curr](void *data) -> bool
165 { return curr->on_process_sigint.touch(data); });
166 new_process->std_eh_callback = current_process->std_eh_callback;
167 new_process->cs_eh_callback = current_process->cs_eh_callback;
168 return std::move(new_process);
169 }
170
171 process_context this_process;
172 process_context *current_process = &this_process;

Callers 1

async_functionMethod · 0.80

Calls 4

child_stack_sizeMethod · 0.80
add_listenerMethod · 0.80
touchMethod · 0.80
moveFunction · 0.70

Tested by

no test coverage detected