X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Packets%2FPacket.cti;h=6dec36531d7ea9a7c1509f820f911a7f9804df93;hb=734c0be097d831c8b6e1e797bae08262fc9b4dfe;hp=bea5af7c8db44e8a540dc36b38e13ef0f52d3dc5;hpb=a1a6c76a214ad1935032826713cabaf9ac57bf07;p=senf.git diff --git a/Packets/Packet.cti b/Packets/Packet.cti index bea5af7..6dec365 100644 --- a/Packets/Packet.cti +++ b/Packets/Packet.cti @@ -26,6 +26,7 @@ //#include "Packet.ih" // Custom includes +#include "../Utils/Exception.hh" #define prefix_ inline ///////////////////////////////cti.p/////////////////////////////////////// @@ -61,7 +62,7 @@ prefix_ OtherPacket senf::Packet::as() const { if (!is()) - throw std::bad_cast(); + throw WrapException(std::bad_cast()); return OtherPacket(ptr()->as()); } @@ -173,14 +174,19 @@ senf::ConcretePacket::create(size_type size, senf::NoInit_t) return ConcretePacket(interpreter::create(size,senf::noinit)); } +#ifndef DOXYGEN + template template -prefix_ senf::ConcretePacket -senf::ConcretePacket::create(ForwardReadableRange const & range) +prefix_ senf::ConcretePacket senf::ConcretePacket:: +create(ForwardReadableRange const & range, + typename boost::disable_if< boost::is_integral >::type *) { return ConcretePacket(interpreter::create(range)); } +#endif + // Create packet as new packet after a given packet template @@ -211,14 +217,19 @@ senf::ConcretePacket::createAfter(Packet packet, size_type size, sen return ConcretePacket(interpreter::createAfter(packet.ptr(), size, senf::noinit)); } +#ifndef DOXYGEN + template template -prefix_ senf::ConcretePacket -senf::ConcretePacket::createAfter(Packet packet, ForwardReadableRange const & range) +prefix_ senf::ConcretePacket senf::ConcretePacket:: +createAfter(Packet packet, ForwardReadableRange const & range, + typename boost::disable_if< boost::is_integral >::type *) { return ConcretePacket(interpreter::createAfter(packet.ptr(), range)); } +#endif + // Create packet as new packet (header) before a given packet template