All Projects → tilpner → Includedir

tilpner / Includedir

Licence: bsd-3-clause
Include a whole directory tree at compile time

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Includedir

Flysystem Backblaze
💿 A backblaze adapter which can be used with flysystem(http://flysystem.thephpleague.com/)
Stars: ✭ 49 (-26.87%)
Mutual labels:  filesystem
Linux Apfs Oot
APFS module for linux (out-of-tree repository)
Stars: ✭ 58 (-13.43%)
Mutual labels:  filesystem
Notify
🔭 Cross-platform filesystem notification library for Rust.
Stars: ✭ 1,123 (+1576.12%)
Mutual labels:  filesystem
Bankai
🚉 - friendly web compiler
Stars: ✭ 1,064 (+1488.06%)
Mutual labels:  assets
30daysofnode
30 days of node is a code base tutorial series for node.js which deals with providing a practical project based learning experience instead of talking about its conceptual details.
Stars: ✭ 57 (-14.93%)
Mutual labels:  filesystem
Browser Shell
A Linux command-line shell in the browser
Stars: ✭ 60 (-10.45%)
Mutual labels:  filesystem
Moosefs
MooseFS – Open Source, Petabyte, Fault-Tolerant, Highly Performing, Scalable Network Distributed File System (Software-Defined Storage)
Stars: ✭ 1,025 (+1429.85%)
Mutual labels:  filesystem
Jekyll Minibundle
A minimalistic asset bundling plugin for Jekyll
Stars: ✭ 65 (-2.99%)
Mutual labels:  assets
Udftools
Linux tools for UDF filesystems and DVD/CD-R(W) drives
Stars: ✭ 57 (-14.93%)
Mutual labels:  filesystem
Laravel Potion
laravel - Potion is a pure PHP asset manager for Laravel 5 based off of Assetic.
Stars: ✭ 63 (-5.97%)
Mutual labels:  assets
Cords
File-system fault injection framework for distributed storage systems
Stars: ✭ 55 (-17.91%)
Mutual labels:  filesystem
F2fs Notes
F2FS的学习笔记以及源码分析。这个github的分析都是初版,CSDN的版本是经过修改的,应该逻辑更为通畅,建议去CSDN进行阅读,连接如下。
Stars: ✭ 56 (-16.42%)
Mutual labels:  filesystem
Fsq
A tool for querying the file system with a SQL-like language.
Stars: ✭ 60 (-10.45%)
Mutual labels:  filesystem
Glusterfs Java Filesystem
GlusterFS for Java
Stars: ✭ 50 (-25.37%)
Mutual labels:  filesystem
Simplefs
A simple file system for Linux kernel
Stars: ✭ 65 (-2.99%)
Mutual labels:  filesystem
Kaitai fs
KaitaiFS: mount any filesystem specified with a .ksy as a real file system
Stars: ✭ 45 (-32.84%)
Mutual labels:  filesystem
Win10 Explorer
A new windows 10 file explorer
Stars: ✭ 58 (-13.43%)
Mutual labels:  filesystem
Raspi Overlayroot
Protect your SD card against wear and tear
Stars: ✭ 66 (-1.49%)
Mutual labels:  filesystem
Asset Share Commons
A modern, open-source asset share reference implementation built on Adobe Experience Manager (AEM)
Stars: ✭ 65 (-2.99%)
Mutual labels:  assets
Linux Apfs
APFS module for linux, with experimental write support. This tree is just for development, please use linux-apfs-oot instead.
Stars: ✭ 63 (-5.97%)
Mutual labels:  filesystem

includedir

Travis Appveyor Crates.io version docs.rs Crates.io license

Include a directory in your Rust binary, e.g. static files for your web server or assets for your game.

Features

  • [x] Automatically compile data into binary
  • [x] Use rust-phf for efficient lookup
  • [x] Wrapping API around the phf map, to abstract away additional features
  • [x] Compression, with optional crate "flate2"
  • [x] Reading from source files for debug builds

Example

Cargo.toml

[package]
name = "example"
version = "0.1.0"

build = "build.rs"
include = ["data"]

[dependencies]
phf = "0.8.0"
includedir = "0.6.0"

[build-dependencies]
includedir_codegen = "0.6.0"

build.rs

extern crate includedir_codegen;

use includedir_codegen::Compression;

fn main() {
    includedir_codegen::start("FILES")
        .dir("data", Compression::Gzip)
        .build("data.rs")
        .unwrap();
}

src/main.rs

extern crate includedir;
extern crate phf;

use std::env;

include!(concat!(env!("OUT_DIR"), "/data.rs"));

fn main() {
    FILES.set_passthrough(env::var_os("PASSTHROUGH").is_some());

    println!("{:?}", FILES.get("data/foo"))
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].