MCPcopy Create free account
hub / github.com/PerroEngine/Perro / build_and_sync_demo

Function build_and_sync_demo

perro_website/build.rs:77–101  ·  view source on GitHub ↗
(root: &Path, project_name: &str, public_name: &str)

Source from the content-addressed store, hash-verified

75 for doc in &mut docs {
76 let order = nav_counts.entry(doc.nav_group.clone()).or_default();
77 doc.nav_order = *order;
78 *order = order.saturating_add(1);
79 }
80 validate_generated_docs(&docs)?;
81
82 let json = serde_json::to_string(&docs)?;
83 let out = format!("pub const DOCS_JSON: &str = {json:?};\n");
84 let out_path = PathBuf::from(env::var("OUT_DIR")?).join("generated_docs.rs");
85 fs::write(out_path, out)?;
86 Ok(())
87}
88
89fn validate_generated_docs(docs: &[DocOut]) -> io::Result<()> {
90 use std::collections::{BTreeMap, BTreeSet};
91
92 const DOC_GROUPS: &[&str] = &[
93 "Start",
94 "Author",
95 "Script",
96 "Runtime",
97 "Assets",
98 "Platforms",
99 "Ship",
100 "Reference",
101 "History",
102 ];
103
104 let mut failures = Vec::new();

Callers 1

mainFunction · 0.85

Calls 8

emit_rerun_for_treeFunction · 0.85
needs_demo_rebuildFunction · 0.85
compile_project_bundleFunction · 0.85
bundle_completeFunction · 0.85
sync_dirFunction · 0.85
joinMethod · 0.80
with_web_output_dirMethod · 0.80
with_targetMethod · 0.80

Tested by

no test coverage detected