Crates.io | includer_codegen |
lib.rs | includer_codegen |
version | 0.2.1 |
source | src |
created_at | 2018-09-14 16:55:20.972256 |
updated_at | 2018-09-24 18:18:23.756629 |
description | Dynamically include assets at build time through code generation. |
homepage | https://github.com/chippers/includer/tree/master/includer_codegen |
repository | https://github.com/chippers/includer |
max_upload_size | |
id | 84728 |
size | 31,061 |
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 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.
Licensed under either of
at your option.
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.