19 for (
auto const& pd : descriptions) {
20 if (pd.branchType() !=
bt) {
23 result.try_emplace(pd.productID(), pd);
28 using ProductTables_t = std::array<ProductTable, NumBranchTypes>;
33 ProductTables_t result{{}};
45 , descriptions{descriptions_for_branch_type(bt, descs)}
53 if (
auto it = descriptions.find(pid); it !=
cend(descriptions)) {
66 : tables_{createProductTables(descriptions)}
decltype(auto) constexpr cend(T &&obj)
ADL-aware version of std::cend.
std::vector< BranchDescription > ProductDescriptions
ViewLookup_t createViewLookups(ProductDescriptionsByID const &descriptions)
constexpr exempt_ptr< E > make_exempt_ptr(E *) noexcept
cet::exempt_ptr< BranchDescription const > description(ProductID) const
ProductLookup_t createProductLookups(ProductDescriptionsByID const &descriptions)
static ProductTables invalid()
std::map< ProductID, BranchDescription > ProductDescriptionsByID
ProductLookup_t productLookup