X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Packets%2FPacket.cti;h=0eb6ddcfb71fe4775fe08df5986607617cd1f35e;hb=fb2fe88ee9a9d2a777ecaf3327d04b60479fcc8d;hp=fac31c02bc8ae28f1d29004da6dbdbb03e264dc4;hpb=078c34233b7d5ca7f9fd9dfb77568f840ad41915;p=senf.git diff --git a/Packets/Packet.cti b/Packets/Packet.cti index fac31c0..0eb6ddc 100644 --- a/Packets/Packet.cti +++ b/Packets/Packet.cti @@ -135,6 +135,12 @@ prefix_ void senf::Packet::finalizeTo() ptr()->finalizeTo(p ? p.ptr() : last().ptr()); } +template +prefix_ Annotation & senf::Packet::annotation() +{ + return ptr()->annotation(); +} + /////////////////////////////////////////////////////////////////////////// // senf::ConcretePacket @@ -198,28 +204,29 @@ create(ForwardReadableRange const & range, template prefix_ senf::ConcretePacket -senf::ConcretePacket::createAfter(Packet packet) +senf::ConcretePacket::createAfter(Packet const & packet) { return ConcretePacket(interpreter::createAfter(packet.ptr())); } template prefix_ senf::ConcretePacket -senf::ConcretePacket::createAfter(Packet packet, senf::NoInit_t) +senf::ConcretePacket::createAfter(Packet const & packet, senf::NoInit_t) { return ConcretePacket(interpreter::createAfter(packet.ptr(),senf::noinit)); } template prefix_ senf::ConcretePacket -senf::ConcretePacket::createAfter(Packet packet, size_type size) +senf::ConcretePacket::createAfter(Packet const & packet, size_type size) { return ConcretePacket(interpreter::createAfter(packet.ptr(), size)); } template prefix_ senf::ConcretePacket -senf::ConcretePacket::createAfter(Packet packet, size_type size, senf::NoInit_t) +senf::ConcretePacket::createAfter(Packet const & packet, size_type size, + senf::NoInit_t) { return ConcretePacket(interpreter::createAfter(packet.ptr(), size, senf::noinit)); } @@ -229,7 +236,7 @@ senf::ConcretePacket::createAfter(Packet packet, size_type size, sen template template prefix_ senf::ConcretePacket senf::ConcretePacket:: -createAfter(Packet packet, ForwardReadableRange const & range, +createAfter(Packet const & packet, ForwardReadableRange const & range, typename boost::disable_if< boost::is_integral >::type *) { return ConcretePacket(interpreter::createAfter(packet.ptr(), range)); @@ -241,14 +248,14 @@ createAfter(Packet packet, ForwardReadableRange const & range, template prefix_ senf::ConcretePacket -senf::ConcretePacket::createBefore(Packet packet) +senf::ConcretePacket::createBefore(Packet const & packet) { return ConcretePacket(interpreter::createBefore(packet.ptr())); } template prefix_ senf::ConcretePacket -senf::ConcretePacket::createBefore(Packet packet, senf::NoInit_t) +senf::ConcretePacket::createBefore(Packet const & packet, senf::NoInit_t) { return ConcretePacket(interpreter::createBefore(packet.ptr(), senf::noinit)); } @@ -266,19 +273,19 @@ senf::ConcretePacket::clone() // Field access template -prefix_ typename senf::ConcretePacket::Parser * -senf::ConcretePacket::operator->() +prefix_ typename senf::ConcretePacket::Parser +senf::ConcretePacket::parser() const { - return ptr()->fields_p(); + return ptr()->fields(); } template -prefix_ typename senf::ConcretePacket::Parser -senf::ConcretePacket::parser() +prefix_ typename senf::ConcretePacket::ParserProxy +senf::ConcretePacket::operator->() const { - return ptr()->fields(); + return ParserProxy(parser()); } // private members