// Interpreter chain access
template <class Type>
-prefix_ bool senf::PacketInterpreterBase::is()
-{
- // ensure that the template argument is included in the corresponding object file when linking:
- { static typename PacketInterpreter<Type>::factory_t _ (PacketInterpreter<Type>::factory()); (void) _;}
- return dynamic_cast< PacketInterpreter<Type>* >(this);
-}
-
-template <class Type>
prefix_ typename senf::PacketInterpreter<Type>::ptr senf::PacketInterpreterBase::as()
{
// ensure that the template argument is included in the corresponding object file when linking:
template <class PacketType>
prefix_ typename senf::PacketInterpreter<PacketType>::ptr
-senf::PacketInterpreter<PacketType>::createAfter(PacketInterpreterBase::ptr packet)
+senf::PacketInterpreter<PacketType>::createAfter(PacketInterpreterBase::ptr const & packet)
{
return createAfter(packet, initSize());
}
template <class PacketType>
prefix_ typename senf::PacketInterpreter<PacketType>::ptr
-senf::PacketInterpreter<PacketType>::createAfter(PacketInterpreterBase::ptr packet, senf::NoInit_t)
+senf::PacketInterpreter<PacketType>::createAfter(PacketInterpreterBase::ptr const & packet, senf::NoInit_t)
{
return createAfter(packet, 0, senf::noinit);
}
template <class PacketType>
prefix_ typename senf::PacketInterpreter<PacketType>::ptr
senf::PacketInterpreter<PacketType>::create(detail::PacketImpl * impl, iterator b, iterator e,
- PacketInterpreterBase::ptr before)
+ PacketInterpreterBase::ptr const & before)
{
return ptr(new PacketInterpreter(impl,b,e,before));
}
prefix_
senf::PacketInterpreter<PacketType>::PacketInterpreter(detail::PacketImpl * impl, iterator b,
iterator e,
- PacketInterpreterBase::ptr before)
+ PacketInterpreterBase::ptr const & before)
: PacketInterpreterBase(impl,b,e,before)
{}