4 #include "cetlib_except/demangle.h" 16 if (result ==
nullptr) {
26 << cet::demangle_symbol(
typeid(*this).name())
27 <<
" was asked for a held product (uniqueProduct()) " 28 <<
"without specifying which one was wanted.\n";
45 TypeID const& wanted_wrapper_type)
const EDProduct const * uniqueProduct() const override
TypeID partnerWrapperType_
bool productUnavailable() const
EDProduct const * anyProduct() const override
std::unique_ptr< EDProduct > partnerProduct_
TypeID const & producedWrapperType() const
bool resolveProductIfAvailable(TypeID const &) const override
virtual void removeCachedProduct() const
cet::coded_exception< errors::ErrorCodes, ExceptionDetail::translate > Exception
EDProduct const * getIt() const override
EDProduct const * uniqueProduct() const override
bool makePartner(TypeID const &wanted_wrapper_type, std::unique_ptr< EDProduct > &partner) const
bool resolveProductIfAvailable(TypeID const &) const override
void throwResolveLogicError(TypeID const &wanted_wrapper_type) const
EDProduct const * anyProduct() const override
void removeCachedProduct() const override