1use serde::{Deserialize, Serialize};
2
3#[derive(Deserialize, Serialize, Debug, Default)]
4pub struct RMPConfig {
5 pub class: String,
6 pub static_functions: Vec<RMPFunction>,
7 pub constructors: Option<Vec<RMPFunction>>,
8 pub destructor: Option<RMPFunction>,
9 pub methods: Option<Vec<RMPFunction>>,
10 pub properties: Option<Vec<RMPFunction>>,
11}
12
13#[derive(Deserialize, Serialize, Debug)]
14pub struct RMPFunction {
15 pub name: String,
16 pub rust_name: String,
17 pub args: Vec<RMPArg>,
18 pub return_type: String,
19 pub docs: Vec<String>,
20}
21
22#[derive(Deserialize, Serialize, Debug)]
23pub struct RMPArg {
24 pub name: String,
25 pub ty: String,
26}