32 #include <boost/shared_ptr.hpp>
62 virtual bool match(
const std::string& key)
const = 0;
75 bool match(
const std::string& )
const {
80 return "AlwaysApplicable";
97 template <
typename WireType>
101 typedef std::list< std::pair<ConverterPredicatePtr, ConverterPtr> >
ConverterList;
113 template <
typename ForwardIterator>
115 std::copy(begin, end, std::inserter(this->
converters,
120 for (
typename ConverterList::const_iterator it = this->
converters.begin();
122 if (it->first->match(key)) {
130 return "PredicateConverterList";
134 stream <<
"converters = " << this->
converters;