30 lines
400 B
Rust
30 lines
400 B
Rust
enum Aliases {
|
|
One(String),
|
|
More(Vec<String>),
|
|
}
|
|
|
|
enum Domain {
|
|
Name(string),
|
|
Config(DomainConfig),
|
|
}
|
|
|
|
struct DomainConfig {
|
|
hostname: String,
|
|
alias: Option<Aliases>,
|
|
web: Option<Web>,
|
|
}
|
|
|
|
enum Web {
|
|
Template(String),
|
|
Config(WebConfig)
|
|
}
|
|
|
|
struct WebConfig {
|
|
template: Option<String>,
|
|
vars: Map<String,Value>,
|
|
}
|
|
|
|
struct MyTilde {
|
|
domains: Vec<Domain>,
|
|
}
|