示例#1
0
std::size_t descriptor_hasher::hash(const descriptor& v) {
    std::size_t seed(0);

    combine(seed, hash_boost_filesystem_path(v.path()));
    combine(seed, v.extension());
    combine(seed, v.is_target());

    return seed;
}
示例#2
0
intermediate_model
intermediate_model_factory::intermediate_model_for_descriptor(
    const annotations::annotation_groups_factory& agf,
    const annotations::type_repository& atrp,
    frontend_registrar& rg, const descriptor& d) const {
    BOOST_LOG_SEV(lg, debug) << "Creating intermediate model. "
                             << "Descriptor: " << d;

    auto& f(rg.frontend_for_extension(d.extension()));
    auto r(f.read(d));
    post_process(agf, atrp, r);

    BOOST_LOG_SEV(lg, debug) << "Created intermediate model.";
    return r;
}