logic_mesh/base/program/
data.rs

1// Copyright (c) 2022-2023, Radu Racariu.
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Default, Clone, Serialize, Deserialize)]
6pub struct ProgramMeta {
7    pub name: String,
8    pub libs: Vec<String>,
9    pub ver: Option<String>,
10    pub description: Option<String>,
11    pub author: Option<String>,
12    pub license: Option<String>,
13}
14
15#[derive(Debug, Default, Clone, Serialize, Deserialize)]
16#[serde(rename_all = "camelCase")]
17pub struct LinkData {
18    pub id: Option<String>,
19    pub source_block_uuid: String,
20    pub target_block_uuid: String,
21    pub source_block_pin_name: String,
22    pub target_block_pin_name: String,
23}
24
25#[derive(Debug, Default, Clone, Serialize, Deserialize)]
26pub struct BlockData {
27    pub id: String,
28    pub name: String,
29    pub dis: String,
30    pub lib: String,
31    pub category: String,
32    pub ver: String,
33}