X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Packets%2FVariantParser.ct;h=63b46dcfb129f6e7fbaef3cc5e0ede3fb7c868be;hb=c45c112ae88196ea8da9c5a9efb0e167196744d2;hp=efaac9ce66d7362615384799226f12217006ba68;hpb=a1a6c76a214ad1935032826713cabaf9ac57bf07;p=senf.git diff --git a/Packets/VariantParser.ct b/Packets/VariantParser.ct index efaac9c..63b46dc 100644 --- a/Packets/VariantParser.ct +++ b/Packets/VariantParser.ct @@ -31,11 +31,11 @@ #define prefix_ ///////////////////////////////ct.p//////////////////////////////////////// -template +template template -prefix_ void senf::VariantParser::init() +prefix_ void senf::VariantParser::init() { - unsigned oldSize( bytes() ); + size_type oldSize( bytes() ); typedef typename boost::mpl::at >::type NewParser; if (oldSize < senf::init_bytes::value) { @@ -43,23 +43,24 @@ prefix_ void senf::VariantParser:: std::advance(j, oldSize); std::fill(i(), j, 0u); safe_data_iterator safe_i (*this); + typename AuxPolicy::WrapperPolicy safeAux (static_cast(*this)); data().insert(j, senf::init_bytes::value - oldSize, 0u); - VariantPolicy::variant(N, safe_i, state()); - NewParser( VariantPolicy::begin(safe_i, state()), state() ).init(); + safeAux.aux(N, safe_i, state()); + NewParser( safeAux.adjust(safe_i, state()), state() ).init(); } else { data_iterator j (i()); std::advance(j, senf::init_bytes::value); data().erase(j, boost::next(i(), oldSize)); std::fill(i(), j, 0u); - VariantPolicy::variant(N, i(), state()); - NewParser(VariantPolicy::begin(i(), state()), state()).init(); + AuxPolicy::aux(N, i(), state()); + NewParser(AuxPolicy::adjust(i(), state()), state()).init(); } } ///////////////////////////////ct.e//////////////////////////////////////// #undef prefix_ - + // Local Variables: // mode: c++ // fill-column: 100