update
This commit is contained in:
parent
eb246b7b29
commit
1016308dcb
11
src/lib.rs
11
src/lib.rs
|
|
@ -32,14 +32,15 @@ pub struct Topic {
|
|||
|
||||
#[derive(JsonSchema, Debug, Deserialize, Serialize)]
|
||||
pub struct Definition {
|
||||
pub name: String,
|
||||
pub value: String,
|
||||
#[serde(default, skip_serializing_if = "String::is_empty")]
|
||||
pub description: String,
|
||||
#[serde(default, skip_serializing_if = "Vec::is_empty")]
|
||||
pub additional_info: Vec<String>,
|
||||
}
|
||||
|
||||
#[derive(JsonSchema, Debug, Deserialize, Serialize)]
|
||||
pub struct ConfigDefault {
|
||||
pub struct Config {
|
||||
pub name: String,
|
||||
#[serde(rename = "type")]
|
||||
pub typ: String,
|
||||
|
|
@ -131,10 +132,10 @@ pub struct Project {
|
|||
pub description: String,
|
||||
#[serde(default, skip_serializing_if = "IndexMap::is_empty")]
|
||||
pub topics: IndexMap<String, Topic>,
|
||||
#[serde(default, skip_serializing_if = "IndexMap::is_empty")]
|
||||
pub definitions: IndexMap<String, Definition>,
|
||||
#[serde(default, skip_serializing_if = "Vec::is_empty")]
|
||||
pub definitions: Vec<Definition>,
|
||||
#[serde(default, skip_serializing_if = "Vec::is_empty")]
|
||||
pub config_defaults: Vec<ConfigDefault>,
|
||||
pub config: Vec<Config>,
|
||||
}
|
||||
|
||||
#[must_use]
|
||||
|
|
|
|||
19
src/main.rs
19
src/main.rs
|
|
@ -252,22 +252,21 @@ fn to_markdown(requirements: PathBuf, add_toc: bool) -> anyhow::Result<String> {
|
|||
|
||||
if !project.definitions.is_empty() {
|
||||
output.push(s!("## Definitions"));
|
||||
for definition in project.definitions {
|
||||
output.push(format!(
|
||||
"- {}: {}",
|
||||
definition.name.trim(),
|
||||
definition.value.trim()
|
||||
));
|
||||
for (name, definition) in project.definitions {
|
||||
output.push(format!("- {}: {}", name.trim(), definition.value.trim()));
|
||||
if !definition.description.is_empty() {
|
||||
output.push(format!(" - {}", definition.description));
|
||||
}
|
||||
for info in definition.additional_info {
|
||||
output.push(format!(" - {}", info.trim()))
|
||||
output.push(format!(" - {}", info.trim()));
|
||||
}
|
||||
}
|
||||
output.push(nl());
|
||||
}
|
||||
|
||||
if !project.config_defaults.is_empty() {
|
||||
output.push(s!("## Config Defaults"));
|
||||
for default in project.config_defaults {
|
||||
if !project.config.is_empty() {
|
||||
output.push(s!("## Config"));
|
||||
for default in project.config {
|
||||
output.push(format!("- **{}**", default.name.trim()));
|
||||
output.push(format!(" - Type: {}", default.typ.trim()));
|
||||
if let Some(unit) = default.unit {
|
||||
|
|
|
|||
Loading…
Reference in New Issue