Skip to main content

over_there/core/msg/content/reply/io/
proc.rs

1use schemars::JsonSchema;
2use serde::{Deserialize, Serialize};
3
4#[derive(
5    JsonSchema, Serialize, Deserialize, Default, Clone, Debug, PartialEq, Eq,
6)]
7pub struct ProcStartedArgs {
8    pub id: u32,
9}
10
11impl crate::core::SchemaInfo for ProcStartedArgs {}
12
13#[derive(
14    JsonSchema, Serialize, Deserialize, Default, Clone, Debug, PartialEq, Eq,
15)]
16pub struct ProcStdinWrittenArgs {
17    pub id: u32,
18}
19
20impl crate::core::SchemaInfo for ProcStdinWrittenArgs {}
21
22#[derive(
23    JsonSchema, Serialize, Deserialize, Default, Clone, Debug, PartialEq, Eq,
24)]
25pub struct ProcStdoutContentsArgs {
26    pub id: u32,
27    pub output: Vec<u8>,
28}
29
30impl crate::core::SchemaInfo for ProcStdoutContentsArgs {}
31
32#[derive(
33    JsonSchema, Serialize, Deserialize, Default, Clone, Debug, PartialEq, Eq,
34)]
35pub struct ProcStderrContentsArgs {
36    pub id: u32,
37    pub output: Vec<u8>,
38}
39
40impl crate::core::SchemaInfo for ProcStderrContentsArgs {}
41
42#[derive(
43    JsonSchema, Serialize, Deserialize, Default, Clone, Debug, PartialEq, Eq,
44)]
45pub struct ProcKilledArgs {
46    pub id: u32,
47    pub exit_code: Option<i32>,
48}
49
50impl crate::core::SchemaInfo for ProcKilledArgs {}
51
52#[derive(
53    JsonSchema, Serialize, Deserialize, Default, Clone, Debug, PartialEq, Eq,
54)]
55pub struct ProcStatusArgs {
56    pub id: u32,
57    pub is_alive: bool,
58    pub exit_code: Option<i32>,
59}
60
61impl crate::core::SchemaInfo for ProcStatusArgs {}