From d7ead3a52fd133c64c35b56fbc6711437083fd80 Mon Sep 17 00:00:00 2001 From: Tomas Pecka <peckato1@fit.cvut.cz> Date: Mon, 21 Aug 2017 09:58:37 +0200 Subject: [PATCH] GlushkovRTE: Simplify code after variant fix --- .../convert/ToPostfixPushdownAutomatonGlushkov.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/alib2algo/src/rte/convert/ToPostfixPushdownAutomatonGlushkov.cpp b/alib2algo/src/rte/convert/ToPostfixPushdownAutomatonGlushkov.cpp index a3d8158d85..8f1c3ea3fc 100644 --- a/alib2algo/src/rte/convert/ToPostfixPushdownAutomatonGlushkov.cpp +++ b/alib2algo/src/rte/convert/ToPostfixPushdownAutomatonGlushkov.cpp @@ -158,13 +158,9 @@ ToPostfixPushdownAutomatonGlushkov::convert ( const rte::FormalRTE < > & rte ) { for ( const GlushkovFollow::TFollowTuple < SymbolType, RankType > & followTuple : followSet [ symb ] ) { //tuple = vector < set < symb > > ext::vector < ext::variant < alphabet::BottomOfTheStackSymbol, ext::set < common::ranked_symbol < SymbolType, RankType > > > > pop, push; - /* - for ( const auto & e : symbFollowTuple ) - pop.push_back ( e ); - std::reverse ( pop.begin ( ), pop.end ( ) ); // <------------ WTF. CRASHES HERE // FIXME - */ for ( const auto & e : followTuple ) - pop.insert ( pop.begin ( ), e ); + pop.push_back ( e ); + std::reverse ( pop.begin ( ), pop.end ( ) ); push.push_back( ext::set < common::ranked_symbol < SymbolType, RankType > > { symb } ); @@ -194,7 +190,8 @@ ToPostfixPushdownAutomatonGlushkov::convert ( const rte::FormalRTE < > & rte ) { if ( ( size_t ) symb.getRank ( ) > 0 ) { for ( const auto & e : symbFollowTuple ) - pop.insert ( pop.begin ( ), e ); + pop.push_back ( e ); + std::reverse ( pop.begin ( ), pop.end ( ) ); } push.push_back( kv2.second ); -- GitLab