incrust 0.2.15

Template engine inspired by Jinja2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use ::abc::{Loader, LoadResult, LoadError};

pub type GroupLoader = Vec<Box<Loader>>;

impl Loader for Vec<Box<Loader>> {
    fn load(&self, name: &str) -> LoadResult {
        for loader in self {
            return match loader.load(name) {
                Err(LoadError::NotFound)    => continue,
                Err(err)                    => Err(err),
                Ok(res)                     => Ok(res),
            }
        }
        Err(LoadError::NotFound)
    }
}