rusty_schema_diff/
schema.rs

1use serde::{Serialize, Deserialize};
2use semver::Version;
3
4#[derive(Debug, Clone, Serialize, Deserialize)]
5pub enum SchemaFormat {
6    JsonSchema,
7    Protobuf,
8    OpenAPI,
9    SqlDDL,
10    RustStruct,
11}
12
13#[derive(Debug, Clone, Serialize, Deserialize)]
14pub struct Schema {
15    pub format: SchemaFormat,
16    pub content: String,
17    pub version: Version,
18}
19
20impl Schema {
21    pub fn new(format: SchemaFormat, content: String, version: Version) -> Self {
22        Self {
23            format,
24            content,
25            version,
26        }
27    }
28}