includer_codegen

Crates.ioincluder_codegen
lib.rsincluder_codegen
version0.2.1
sourcesrc
created_at2018-09-14 16:55:20.972256
updated_at2018-09-24 18:18:23.756629
descriptionDynamically include assets at build time through code generation.
homepagehttps://github.com/chippers/includer/tree/master/includer_codegen
repositoryhttps://github.com/chippers/includer
max_upload_size
id84728
size31,061
chip (chippers)

documentation

https://docs.rs/includer_codegen

README

includer_codegen Build Status Documentation

This crate is intended to be used at build time to generate code that includes your assets. The "frontend" library includer provides the types for your library/binary that includer_codegen outputs, along with some helpers.

The following is a build.rs file that includes all the files (recursively) in the subdirectory resources in a cargo project.

extern crate includer_codegen;

use includer_codegen::prelude::*;
use std::env;
use std::path::PathBuf;

fn main() {
    let cargo_dir = env::var("CARGO_MANIFEST_DIR").unwrap();
    let resources_path = PathBuf::from(cargo_dir).join("resources");
    let resources = Assets::new("ASSETS", resources_path).build();

    Codegen::new().pipe(resources).write();
}

Filtering

Filtering files is possible by included filter types. Currently there are built-in ways to include/exclude based on file extension or regex. See the documentation for the api to use these built-in filters.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Commit count: 19

cargo fmt