Function static_files::sets::generate_resources_sets [−][src]
pub fn generate_resources_sets<P, G, S>(
project_dir: P,
filter: Option<fn(p: &Path) -> bool>,
generated_filename: G,
module_name: &str,
fn_name: &str,
set_split_strategie: &mut S
) -> Result<()> where
P: AsRef<Path>,
G: AsRef<Path>,
S: SetSplitStrategie,
Expand description
Generate resources for project_dir
using filter
breaking them into separate modules using set_split_strategie
(recommended for large > 128 Mb setups).
Result saved in module named module_name
. It exports
only one function named fn_name
. It is then exported from
generated_filename
. generated_filename
is also used to determine
the parent directory for the module.
in build.rs
:
use std::{env, path::Path}; use static_files::sets::{generate_resources_sets, SplitByCount}; fn main() { let out_dir = env::var("OUT_DIR").unwrap(); let generated_filename = Path::new(&out_dir).join("generated_sets.rs"); generate_resources_sets( "./tests", None, generated_filename, "sets", "generate", &mut SplitByCount::new(2), ) .unwrap(); }
in main.rs
:
include!(concat!(env!("OUT_DIR"), "/generated_sets.rs")); fn main() { let generated_file = generate(); assert_eq!(generated_file.len(), 4); }