From 1c88b2e3a443fd7ca4a3029b25dae923203c492d Mon Sep 17 00:00:00 2001 From: Jan Travnicek <Jan.Travnicek@fit.cvut.cz> Date: Sat, 6 Jun 2015 20:21:10 +0200 Subject: [PATCH] -postfix +prefix increment; foreach loops --- .../automaton/AutomatonFromStringParser.cpp | 8 +++---- .../src/automaton/AutomatonFromXMLParser.cpp | 22 ++++++++--------- alib2data/src/automaton/FSM/CompactNFA.cpp | 4 ++-- alib2data/src/automaton/PDA/DPDA.cpp | 4 ++-- alib2data/src/automaton/PDA/SinglePopDPDA.cpp | 23 +++++++++--------- alib2data/src/automaton/PDA/SinglePopNPDA.cpp | 6 ++--- alib2data/src/automaton/TA/DFTA.cpp | 21 ++++++++-------- alib2data/src/automaton/TA/NFTA.cpp | 24 +++++++++---------- alib2data/src/automaton/TM/OneTapeDTM.cpp | 8 +++---- alib2data/src/debug/bfdStacktrace.cpp | 2 +- alib2data/src/debug/simpleStacktrace.cpp | 2 +- .../src/exception/ExceptionFromXMLParser.cpp | 4 ++-- alib2data/src/grammar/ContextFree/LG.cpp | 4 ++-- .../src/grammar/GrammarFromXMLParser.cpp | 10 ++++---- .../directed/AdjacencyListDirectedGraph.cpp | 15 +++++------- .../directed/AdjacencyMatrixDirectedGraph.cpp | 17 ++++++------- .../AdjacencyListUndirectedGraph.cpp | 17 ++++++------- .../AdjacencyMatrixUndirectedGraph.cpp | 21 +++++++--------- alib2data/src/label/LabelFromXMLParser.cpp | 2 +- .../unbounded/UnboundedRegExpAlternation.cpp | 2 +- .../UnboundedRegExpConcatenation.cpp | 2 +- alib2data/src/sax/FromXMLParserHelper.cpp | 4 ++-- alib2data/src/tree/TreeToRawComposer.cpp | 2 +- .../tree/ranked/PrefixRankedBarPattern.cpp | 2 +- alib2data/src/tree/ranked/RankedNode.cpp | 4 ++-- alib2data/src/tree/unranked/UnrankedNode.cpp | 4 ++-- alib2std/src/extensions/list.hpp | 2 +- alib2std/src/extensions/map.hpp | 2 +- alib2std/src/extensions/set.hpp | 2 +- alib2std/src/extensions/unordered_map.hpp | 2 +- alib2std/src/extensions/vector.hpp | 4 ++-- 31 files changed, 116 insertions(+), 130 deletions(-) diff --git a/alib2data/src/automaton/AutomatonFromStringParser.cpp b/alib2data/src/automaton/AutomatonFromStringParser.cpp index 96d2ae27f1..d30f391017 100644 --- a/alib2data/src/automaton/AutomatonFromStringParser.cpp +++ b/alib2data/src/automaton/AutomatonFromStringParser.cpp @@ -302,7 +302,7 @@ void AutomatonFromStringParser::parseEpsilonNFATransition(std::istream& input, s } else { token = m_AutomatonLexer.next(input); } - iter++; + ++iter; } m_AutomatonLexer.putback(input, token); @@ -339,7 +339,7 @@ void AutomatonFromStringParser::parseMultiInitialStateNFATransition(std::istream } else { token = m_AutomatonLexer.next(input); } - iter++; + ++iter; } m_AutomatonLexer.putback(input, token); @@ -379,7 +379,7 @@ void AutomatonFromStringParser::parseNFATransition(std::istream& input, std::set } else { token = m_AutomatonLexer.next(input); } - iter++; + ++iter; } m_AutomatonLexer.putback(input, token); @@ -416,7 +416,7 @@ void AutomatonFromStringParser::parseDFATransition(std::istream& input, std::set } else { token = m_AutomatonLexer.next(input); } - iter++; + ++iter; } m_AutomatonLexer.putback(input, token); diff --git a/alib2data/src/automaton/AutomatonFromXMLParser.cpp b/alib2data/src/automaton/AutomatonFromXMLParser.cpp index 1a00c83623..7ccea32d87 100644 --- a/alib2data/src/automaton/AutomatonFromXMLParser.cpp +++ b/alib2data/src/automaton/AutomatonFromXMLParser.cpp @@ -485,9 +485,9 @@ DFTA AutomatonFromXMLParser::parseDFTA(std::deque<sax::Token>::iterator& input) std::set<State> finalStates = parseFinalStates(input); DFTA automaton; - automaton.setStates(states); - automaton.setInputSymbols(inputSymbols); - automaton.setFinalStates(finalStates); + automaton.setStates(std::move(states)); + automaton.setInputSymbols(std::move(inputSymbols)); + automaton.setFinalStates(std::move(finalStates)); parseTransitions<DFTA>(input, automaton); @@ -503,9 +503,9 @@ NFTA AutomatonFromXMLParser::parseNFTA(std::deque<sax::Token>::iterator& input) std::set<State> finalStates = parseFinalStates(input); NFTA automaton; - automaton.setStates(states); - automaton.setInputSymbols(inputSymbols); - automaton.setFinalStates(finalStates); + automaton.setStates(std::move(states)); + automaton.setInputSymbols(std::move(inputSymbols)); + automaton.setFinalStates(std::move(finalStates)); parseTransitions<NFTA>(input, automaton); @@ -956,7 +956,7 @@ void AutomatonFromXMLParser::parseTransition(std::deque<sax::Token>::iterator& i State to = parseTransitionTo(input); popToken(input, sax::Token::TokenType::END_ELEMENT, "transition"); - automaton.addTransition(inputSymbol, from, to); + automaton.addTransition(std::move(inputSymbol), std::move(from), std::move(to)); } void AutomatonFromXMLParser::parseTransition(std::deque<sax::Token>::iterator& input, NFTA& automaton) const { @@ -966,7 +966,7 @@ void AutomatonFromXMLParser::parseTransition(std::deque<sax::Token>::iterator& i State to = parseTransitionTo(input); popToken(input, sax::Token::TokenType::END_ELEMENT, "transition"); - automaton.addTransition(inputSymbol, from, to); + automaton.addTransition(std::move(inputSymbol), std::move(from), std::move(to)); } State AutomatonFromXMLParser::parseTransitionTo(std::deque<sax::Token>::iterator& input) const { @@ -1006,7 +1006,7 @@ Shift AutomatonFromXMLParser::parseTransitionShift(std::deque<sax::Token>::itera } else { throw sax::ParserException(sax::Token("", sax::Token::TokenType::CHARACTER), *input); } - input++; + ++input; popToken(input, sax::Token::TokenType::END_ELEMENT, "shift"); return shift; @@ -1072,7 +1072,7 @@ std::variant<string::Epsilon, alphabet::Symbol> AutomatonFromXMLParser::parseTra if(isToken(input, sax::Token::TokenType::START_ELEMENT, "epsilon")) { std::variant<string::Epsilon, alphabet::Symbol> result(string::Epsilon::EPSILON); - input++; + ++input; popToken(input, sax::Token::TokenType::END_ELEMENT, "epsilon"); popToken(input, sax::Token::TokenType::END_ELEMENT, "input"); return result; @@ -1088,7 +1088,7 @@ std::variant<string::Epsilon, alphabet::Symbol> AutomatonFromXMLParser::parseTra if(isToken(input, sax::Token::TokenType::START_ELEMENT, "epsilon")) { std::variant<string::Epsilon, alphabet::Symbol> result(string::Epsilon::EPSILON); - input++; + ++input; popToken(input, sax::Token::TokenType::END_ELEMENT, "epsilon"); popToken(input, sax::Token::TokenType::END_ELEMENT, "output"); return result; diff --git a/alib2data/src/automaton/FSM/CompactNFA.cpp b/alib2data/src/automaton/FSM/CompactNFA.cpp index 3e6df2497f..c7989a57fd 100644 --- a/alib2data/src/automaton/FSM/CompactNFA.cpp +++ b/alib2data/src/automaton/FSM/CompactNFA.cpp @@ -86,8 +86,8 @@ bool CompactNFA::removeState(const State& state) { throw AutomatonException("State \"" + (std::string) state.getName() + "\" is final state."); } - for (std::map<std::pair<State, string::LinearString>, std::set<State> >::const_iterator t = transitions.begin(); t != transitions.end(); t++) { - if (t->first.first == state || t->second.find(state) != t->second.end()) + for (const std::pair<std::pair<State, string::LinearString>, std::set<State> >& t : transitions) { + if (t.first.first == state || t.second.find(state) != t.second.end()) throw AutomatonException("State \"" + (std::string) state.getName() + "\" is used in transition."); } diff --git a/alib2data/src/automaton/PDA/DPDA.cpp b/alib2data/src/automaton/PDA/DPDA.cpp index cad653a7b7..47945f424b 100644 --- a/alib2data/src/automaton/PDA/DPDA.cpp +++ b/alib2data/src/automaton/PDA/DPDA.cpp @@ -117,7 +117,7 @@ bool DPDA::addTransition(State from, std::variant<string::Epsilon, alphabet::Sym const std::vector<alphabet::Symbol>& shorter = (alpha.size() < beta.size()) ? alpha : beta; const std::vector<alphabet::Symbol>& longer = (alpha.size() < beta.size()) ? beta : alpha; - for(auto itS = shorter.begin(), itL = longer.begin(); itS != shorter.end(); itS++, itL++) { + for(auto itS = shorter.begin(), itL = longer.begin(); itS != shorter.end(); ++itS, ++itL) { if(*itS != *itL) return false; } return true; @@ -134,7 +134,7 @@ bool DPDA::addTransition(State from, std::variant<string::Epsilon, alphabet::Sym const std::vector<alphabet::Symbol>& shorter = (alpha.size() < beta.size()) ? alpha : beta; const std::vector<alphabet::Symbol>& longer = (alpha.size() < beta.size()) ? beta : alpha; - for(auto itS = shorter.begin(), itL = longer.begin(); itS != shorter.end(); itS++, itL++) { + for(auto itS = shorter.begin(), itL = longer.begin(); itS != shorter.end(); ++itS, ++itL) { if(*itS != *itL) return false; } return true; diff --git a/alib2data/src/automaton/PDA/SinglePopDPDA.cpp b/alib2data/src/automaton/PDA/SinglePopDPDA.cpp index 2b1edfcce3..cca3fdc319 100644 --- a/alib2data/src/automaton/PDA/SinglePopDPDA.cpp +++ b/alib2data/src/automaton/PDA/SinglePopDPDA.cpp @@ -34,20 +34,19 @@ bool SinglePopDPDA::removeState(const State& state) { throw AutomatonException("State \"" + (std::string) state.getName() + "\" is final state."); } - for (std::map<std::tuple<State, std::variant<string::Epsilon, alphabet::Symbol>, alphabet::Symbol>, std::pair<State, std::vector<alphabet::Symbol> > >::const_iterator transition = transitions.begin(); transition != transitions.end(); transition++) { - if (state == std::get<0>(transition->first)) + for (const std::pair<std::tuple<State, std::variant<string::Epsilon, alphabet::Symbol>, alphabet::Symbol>, std::pair<State, std::vector<alphabet::Symbol> > >& transition : transitions) { + if (state == std::get<0>(transition.first)) throw AutomatonException("State \"" + (std::string) state.getName() + "\" is used in transition."); - if(transition->second.first == state) + if(transition.second.first == state) throw AutomatonException("State \"" + (std::string) state.getName() + "\" is used in transition."); - } return states.erase(state); } bool SinglePopDPDA::removeInputSymbol(const alphabet::Symbol& symbol) { - for (std::map<std::tuple<State, std::variant<string::Epsilon, alphabet::Symbol>, alphabet::Symbol>, std::pair<State, std::vector<alphabet::Symbol> > >::const_iterator transition = transitions.begin(); transition != transitions.end(); transition++) { - if (std::get<1>(transition->first).is<alphabet::Symbol>() && symbol == std::get<1>(transition->first).get<alphabet::Symbol>()) + for (const std::pair<std::tuple<State, std::variant<string::Epsilon, alphabet::Symbol>, alphabet::Symbol>, std::pair<State, std::vector<alphabet::Symbol> > >& transition : transitions) { + if (std::get<1>(transition.first).is<alphabet::Symbol>() && symbol == std::get<1>(transition.first).get<alphabet::Symbol>()) throw AutomatonException("Symbol \"" + (std::string) symbol + "\" is used in transition."); } @@ -55,11 +54,11 @@ bool SinglePopDPDA::removeInputSymbol(const alphabet::Symbol& symbol) { } bool SinglePopDPDA::removeStackSymbol(const alphabet::Symbol& symbol) { - for (std::map<std::tuple<State, std::variant<string::Epsilon, alphabet::Symbol>, alphabet::Symbol>, std::pair<State, std::vector<alphabet::Symbol> > >::const_iterator transition = transitions.begin(); transition != transitions.end(); transition++) { - if (symbol == std::get<2>(transition->first)) + for (const std::pair<std::tuple<State, std::variant<string::Epsilon, alphabet::Symbol>, alphabet::Symbol>, std::pair<State, std::vector<alphabet::Symbol> > >& transition : transitions) { + if (symbol == std::get<2>(transition.first)) throw AutomatonException("Stack symbol \"" + (std::string) symbol + "\" is used in transition."); - if (std::find(transition->second.second.begin(), transition->second.second.end(), symbol) != transition->second.second.end()) + if (std::find(transition.second.second.begin(), transition.second.second.end(), symbol) != transition.second.second.end()) throw AutomatonException("Stack symbol \"" + (std::string) symbol + "\" is used in transition."); } @@ -87,9 +86,9 @@ bool SinglePopDPDA::addTransition(State from, std::variant<string::Epsilon, alph throw AutomatonException("Stack symbol \"" + (std::string) pop + "\" doesn't exist."); } - for(std::vector<alphabet::Symbol>::const_iterator pushSymbol = push.begin(); pushSymbol != push.end(); pushSymbol++) { - if (stackAlphabet.find(*pushSymbol) == stackAlphabet.end()) { - throw AutomatonException("Stack symbol \"" + (std::string) *pushSymbol + "\" doesn't exist."); + for(const alphabet::Symbol& pushSymbol : push) { + if (stackAlphabet.find(pushSymbol) == stackAlphabet.end()) { + throw AutomatonException("Stack symbol \"" + (std::string) pushSymbol + "\" doesn't exist."); } } diff --git a/alib2data/src/automaton/PDA/SinglePopNPDA.cpp b/alib2data/src/automaton/PDA/SinglePopNPDA.cpp index e4d5a14765..ecc6f9b5a0 100644 --- a/alib2data/src/automaton/PDA/SinglePopNPDA.cpp +++ b/alib2data/src/automaton/PDA/SinglePopNPDA.cpp @@ -89,9 +89,9 @@ bool SinglePopNPDA::addTransition(State from, std::variant<string::Epsilon, alph throw AutomatonException("Stack symbol \"" + (std::string) pop + "\" doesn't exist."); } - for(std::vector<alphabet::Symbol>::const_iterator pushSymbol = push.begin(); pushSymbol != push.end(); pushSymbol++) { - if (stackAlphabet.find(*pushSymbol) == stackAlphabet.end()) { - throw AutomatonException("Stack symbol \"" + (std::string) *pushSymbol + "\" doesn't exist."); + for(const alphabet::Symbol& pushSymbol : push) { + if (stackAlphabet.find(pushSymbol) == stackAlphabet.end()) { + throw AutomatonException("Stack symbol \"" + (std::string) pushSymbol + "\" doesn't exist."); } } diff --git a/alib2data/src/automaton/TA/DFTA.cpp b/alib2data/src/automaton/TA/DFTA.cpp index fe00153de1..a6f4fc348e 100644 --- a/alib2data/src/automaton/TA/DFTA.cpp +++ b/alib2data/src/automaton/TA/DFTA.cpp @@ -30,20 +30,20 @@ bool DFTA::removeState(const State& state) { } AutomatonException ex ("State \"" + (std::string) state.getName() + "\" is used in transition."); - for (std::map<std::pair<alphabet::RankedSymbol, std::vector<State> >, State>::const_iterator t = transitions.begin(); t != transitions.end(); t++) { - const std::vector<State> states = t -> first.second; - for (std::vector<State>::const_iterator it = states.begin(); it != states.end(); ++it) { - if (*it == state) throw ex; + for (const std::pair<std::pair<alphabet::RankedSymbol, std::vector<State> >, State>& t : transitions) { + const std::vector<State>& states = t . first.second; + for (const State& it : states) { + if (it == state) throw ex; } - if (t -> second == state) throw ex; + if (t . second == state) throw ex; } return states.erase(state); } bool DFTA::removeInputSymbol(const alphabet::RankedSymbol& symbol) { - for (std::map<std::pair<alphabet::RankedSymbol, std::vector<State> >, State>::const_iterator t = transitions.begin(); t != transitions.end(); t++) { - if (t -> first.first == symbol) + for (const std::pair<std::pair<alphabet::RankedSymbol, std::vector<State> >, State>& t : transitions) { + if (t . first.first == symbol) throw AutomatonException("Input symbol \"" + (std::string) symbol + "\" is used."); } @@ -51,7 +51,6 @@ bool DFTA::removeInputSymbol(const alphabet::RankedSymbol& symbol) { } bool DFTA::addTransition(const alphabet::RankedSymbol & symbol, const std::vector<State> & prevStates, const State & next) { - if (prevStates.size() != symbol.getRank().getData()) throw AutomatonException("Number of states doesn't match rank of the symbol"); @@ -61,9 +60,9 @@ bool DFTA::addTransition(const alphabet::RankedSymbol & symbol, const std::vecto if (states.find(next) == states.end()) throw AutomatonException("State \"" + (std::string) next.getName() + "\" doesn't exist."); - for (std::vector<State>::const_iterator it = prevStates.begin(); it != prevStates.end(); ++it) { - if (states.find(*it) == states.end()) - throw AutomatonException("State \"" + (std::string) it -> getName() + "\" doesn't exist."); + for (const State& it : prevStates) { + if (states.find(it) == states.end()) + throw AutomatonException("State \"" + (std::string) it . getName() + "\" doesn't exist."); } std::pair<alphabet::RankedSymbol, std::vector<State> > key = std::make_pair(symbol, prevStates); diff --git a/alib2data/src/automaton/TA/NFTA.cpp b/alib2data/src/automaton/TA/NFTA.cpp index fce9ee97f1..e1875c18ba 100644 --- a/alib2data/src/automaton/TA/NFTA.cpp +++ b/alib2data/src/automaton/TA/NFTA.cpp @@ -39,20 +39,20 @@ bool NFTA::removeState(const State& state) { } AutomatonException ex ("State \"" + (std::string) state.getName() + "\" is used in transition."); - for (std::map<std::pair<alphabet::RankedSymbol, std::vector<State> >, std::set<State> >::const_iterator t = transitions.begin(); t != transitions.end(); t++) { - const std::vector<State> states = t -> first.second; - for (std::vector<State>::const_iterator it = states.begin(); it != states.end(); ++it) { - if (*it == state) throw ex; + for (const std::pair<std::pair<alphabet::RankedSymbol, std::vector<State> >, std::set<State> >& t : transitions) { + const std::vector<State>& states = t . first.second; + for (const State& it : states) { + if (it == state) throw ex; } - if (t -> second.find(state) != t -> second.end()) throw ex; + if (t . second.find(state) != t . second.end()) throw ex; } return states.erase(state); } bool NFTA::removeInputSymbol(const alphabet::RankedSymbol& symbol) { - for (std::map<std::pair<alphabet::RankedSymbol, std::vector<State> >, std::set<State> >::const_iterator t = transitions.begin(); t != transitions.end(); t++) { - if (t -> first.first == symbol) + for (const std::pair<std::pair<alphabet::RankedSymbol, std::vector<State> >, std::set<State> >& t : transitions) { + if (t . first.first == symbol) throw AutomatonException("Input symbol \"" + (std::string) symbol + "\" is used."); } @@ -70,9 +70,9 @@ bool NFTA::addTransition(const alphabet::RankedSymbol & symbol, const std::vecto if (states.find(next) == states.end()) throw AutomatonException("State \"" + (std::string) next.getName() + "\" doesn't exist."); - for (std::vector<State>::const_iterator it = prevStates.begin(); it != prevStates.end(); ++it) { - if (states.find(*it) == states.end()) - throw AutomatonException("State \"" + (std::string) it -> getName() + "\" doesn't exist."); + for (const State& it : prevStates) { + if (states.find(it) == states.end()) + throw AutomatonException("State \"" + (std::string) it . getName() + "\" doesn't exist."); } std::pair<alphabet::RankedSymbol, std::vector<State> > key = std::make_pair(symbol, prevStates); @@ -85,8 +85,8 @@ bool NFTA::removeTransition(const alphabet::RankedSymbol symbol, const std::vect } bool NFTA::isDeterministic() const { - for (std::map<std::pair<alphabet::RankedSymbol, std::vector<State> >, std::set<State> >::const_iterator t = transitions.begin(); t != transitions.end(); t++) { - if (t -> second.size() != 1 || t -> second.size() != 0) { + for (const std::pair<std::pair<alphabet::RankedSymbol, std::vector<State> >, std::set<State> >& t : transitions) { + if (t . second.size() != 1 || t . second.size() != 0) { return false; } } diff --git a/alib2data/src/automaton/TM/OneTapeDTM.cpp b/alib2data/src/automaton/TM/OneTapeDTM.cpp index c4a86cd0cc..0837107daa 100644 --- a/alib2data/src/automaton/TM/OneTapeDTM.cpp +++ b/alib2data/src/automaton/TM/OneTapeDTM.cpp @@ -32,8 +32,8 @@ bool OneTapeDTM::removeState(const State& state) { throw AutomatonException("State \"" + (std::string) state.getName() + "\" is final state."); } - for (std::map<std::pair<State, alphabet::Symbol>, std::tuple<State, alphabet::Symbol, Shift> >::const_iterator transition = transitions.begin(); transition != transitions.end(); transition++) { - if (state == transition->first.first || state == std::get<0>(transition->second)) + for (const std::pair<std::pair<State, alphabet::Symbol>, std::tuple<State, alphabet::Symbol, Shift> >& transition : transitions) { + if (state == transition.first.first || state == std::get<0>(transition.second)) throw AutomatonException("State \"" + (std::string) state.getName() + "\" is used in a transition."); } @@ -49,8 +49,8 @@ bool OneTapeDTM::removeTapeSymbol(const alphabet::Symbol& symbol) { throw AutomatonException("Tape symbol \"" + (std::string) symbol + "\" is in input alphabet."); } - for (std::map<std::pair<State, alphabet::Symbol>, std::tuple<State, alphabet::Symbol, Shift> >::const_iterator transition = transitions.begin(); transition != transitions.end(); transition++) { - if (symbol == transition->first.second || symbol == std::get<1>(transition->second)) + for (const std::pair<std::pair<State, alphabet::Symbol>, std::tuple<State, alphabet::Symbol, Shift> >& transition : transitions) { + if (symbol == transition.first.second || symbol == std::get<1>(transition.second)) throw AutomatonException("Tape symbol \"" + (std::string) symbol + "\" is used in transition."); } diff --git a/alib2data/src/debug/bfdStacktrace.cpp b/alib2data/src/debug/bfdStacktrace.cpp index 02b2ca0c14..e4a5d692dc 100644 --- a/alib2data/src/debug/bfdStacktrace.cpp +++ b/alib2data/src/debug/bfdStacktrace.cpp @@ -71,7 +71,7 @@ string bfdStacktrace(unsigned int max_frames) { // iterate over the returned symbol lines. skip the first, it is the // address of this function. - for (int i = 1; i < addrlen; i++) { + for (int i = 1; i < addrlen; ++i) { char *begin_name = 0, *begin_offset = 0, *end_offset = 0, *addr_offset = 0; // find parentheses and +address offset surrounding the mangled name: diff --git a/alib2data/src/debug/simpleStacktrace.cpp b/alib2data/src/debug/simpleStacktrace.cpp index efe159df5f..e57900b4e8 100644 --- a/alib2data/src/debug/simpleStacktrace.cpp +++ b/alib2data/src/debug/simpleStacktrace.cpp @@ -55,7 +55,7 @@ string simpleStacktrace(unsigned int max_frames) { // iterate over the returned symbol lines. skip the first, it is the // address of this function. - for (int i = 1; i < addrlen; i++) { + for (int i = 1; i < addrlen; ++i) { char *begin_name = 0, *begin_offset = 0, *end_offset = 0, *addr_offset = 0; // find parentheses and +address offset surrounding the mangled name: diff --git a/alib2data/src/exception/ExceptionFromXMLParser.cpp b/alib2data/src/exception/ExceptionFromXMLParser.cpp index b477e99fef..a01dc153bd 100644 --- a/alib2data/src/exception/ExceptionFromXMLParser.cpp +++ b/alib2data/src/exception/ExceptionFromXMLParser.cpp @@ -24,14 +24,14 @@ AlibException ExceptionFromXMLParser::parseException(std::deque<sax::Token>::ite std::string cause = ""; if (input->getType() == sax::Token::TokenType::CHARACTER) { cause = std::move(*input).moveData(); - input++; + ++input; } popToken(input, sax::Token::TokenType::END_ELEMENT, "cause"); popToken(input, sax::Token::TokenType::START_ELEMENT, "backtrace"); std::string backtrace = ""; if (input->getType() == sax::Token::TokenType::CHARACTER) { backtrace = std::move(*input).moveData(); - input++; + ++input; } popToken(input, sax::Token::TokenType::END_ELEMENT, "backtrace"); popToken(input, sax::Token::TokenType::END_ELEMENT, alib::Names::EXCEPTION_ALIB_EXCEPTION); diff --git a/alib2data/src/grammar/ContextFree/LG.cpp b/alib2data/src/grammar/ContextFree/LG.cpp index 22217ef54e..0e193a764e 100644 --- a/alib2data/src/grammar/ContextFree/LG.cpp +++ b/alib2data/src/grammar/ContextFree/LG.cpp @@ -136,7 +136,7 @@ bool LG::removeRule(const alphabet::Symbol& leftHandSide, const std::tuple<std:: bool LG::addRawRule(alphabet::Symbol leftHandSide, std::vector<alphabet::Symbol> rightHandSide) { std::vector<alphabet::Symbol>::iterator nonterminalPosition = rightHandSide.begin(); - for(; nonterminalPosition != rightHandSide.end(); nonterminalPosition++) { + for(; nonterminalPosition != rightHandSide.end(); ++nonterminalPosition) { if(nonterminalAlphabet.count(*nonterminalPosition)) break; } @@ -168,7 +168,7 @@ std::map<alphabet::Symbol, std::set<std::vector<alphabet::Symbol>>> LG::getRawRu bool LG::removeRawRule(const alphabet::Symbol& leftHandSide, const std::vector<alphabet::Symbol>& rightHandSide) { std::vector<alphabet::Symbol>::const_iterator nonterminalPosition = rightHandSide.begin(); - for(; nonterminalPosition != rightHandSide.end(); nonterminalPosition++) { + for(; nonterminalPosition != rightHandSide.end(); ++nonterminalPosition) { if(nonterminalAlphabet.count(*nonterminalPosition)) break; } diff --git a/alib2data/src/grammar/GrammarFromXMLParser.cpp b/alib2data/src/grammar/GrammarFromXMLParser.cpp index 4259503c8c..43849203e9 100644 --- a/alib2data/src/grammar/GrammarFromXMLParser.cpp +++ b/alib2data/src/grammar/GrammarFromXMLParser.cpp @@ -344,7 +344,7 @@ bool GrammarFromXMLParser::parseGeneratesEpsilon(std::deque<sax::Token>::iterato bool generatesEpsilon; popToken(input, sax::Token::TokenType::START_ELEMENT, "generatesEpsilon"); if(isToken(input, sax::Token::TokenType::START_ELEMENT, "true")) { - input++; + ++input; popToken(input, sax::Token::TokenType::END_ELEMENT, "true"); generatesEpsilon = true; } else { @@ -454,7 +454,7 @@ std::vector<alphabet::Symbol> GrammarFromXMLParser::parseRuleLContext(std::deque std::vector<alphabet::Symbol> lContext; popToken(input, sax::Token::TokenType::START_ELEMENT, "lContext"); if(isToken(input, sax::Token::TokenType::START_ELEMENT, "epsilon")) { - input++; + ++input; popToken(input, sax::Token::TokenType::END_ELEMENT, "epsilon"); } else while (isTokenType(input, sax::Token::TokenType::START_ELEMENT)) { lContext.push_back(alib::xmlApi<alphabet::Symbol>::parse(input)); @@ -467,7 +467,7 @@ std::vector<alphabet::Symbol> GrammarFromXMLParser::parseRuleLHS(std::deque<sax: std::vector<alphabet::Symbol> lhs; popToken(input, sax::Token::TokenType::START_ELEMENT, "lhs"); if(isToken(input, sax::Token::TokenType::START_ELEMENT, "epsilon")) { - input++; + ++input; popToken(input, sax::Token::TokenType::END_ELEMENT, "epsilon"); } else while (isTokenType(input, sax::Token::TokenType::START_ELEMENT)) { lhs.push_back(alib::xmlApi<alphabet::Symbol>::parse(input)); @@ -487,7 +487,7 @@ std::vector<alphabet::Symbol> GrammarFromXMLParser::parseRuleRContext(std::deque std::vector<alphabet::Symbol> rContext; popToken(input, sax::Token::TokenType::START_ELEMENT, "rContext"); if(isToken(input, sax::Token::TokenType::START_ELEMENT, "epsilon")) { - input++; + ++input; popToken(input, sax::Token::TokenType::END_ELEMENT, "epsilon"); } else while (isTokenType(input, sax::Token::TokenType::START_ELEMENT)) { rContext.push_back(alib::xmlApi<alphabet::Symbol>::parse(input)); @@ -511,7 +511,7 @@ std::vector<alphabet::Symbol> GrammarFromXMLParser::parseRuleRHS(std::deque<sax: std::vector<alphabet::Symbol> rhs; popToken(input, sax::Token::TokenType::START_ELEMENT, "rhs"); if(isToken(input, sax::Token::TokenType::START_ELEMENT, "epsilon")) { - input++; + ++input; popToken(input, sax::Token::TokenType::END_ELEMENT, "epsilon"); } else while (isTokenType(input, sax::Token::TokenType::START_ELEMENT)) { rhs.push_back(alib::xmlApi<alphabet::Symbol>::parse(input)); diff --git a/alib2data/src/graph/directed/AdjacencyListDirectedGraph.cpp b/alib2data/src/graph/directed/AdjacencyListDirectedGraph.cpp index 565567c454..629e9d5970 100644 --- a/alib2data/src/graph/directed/AdjacencyListDirectedGraph.cpp +++ b/alib2data/src/graph/directed/AdjacencyListDirectedGraph.cpp @@ -105,15 +105,12 @@ bool AdjacencyListDirectedGraph::removeNode(const Node &node) adj.erase(search); - auto i = edges.begin(); - while (i != edges.end()) { - if (i->getFromNode() == node) { - edges.erase(i++); - } else if (i->getToNode() == node) { - listRemoveOne(adj[i->getFromNode()], node); - edges.erase(i++); - } else { - i++; + for (auto& i : edges) { + if (i.getFromNode() == node) { + edges.erase(i); + } else if (i.getToNode() == node) { + listRemoveOne(adj[i.getFromNode()], node); + edges.erase(i); } } diff --git a/alib2data/src/graph/directed/AdjacencyMatrixDirectedGraph.cpp b/alib2data/src/graph/directed/AdjacencyMatrixDirectedGraph.cpp index d4631d8d15..e8051f9442 100644 --- a/alib2data/src/graph/directed/AdjacencyMatrixDirectedGraph.cpp +++ b/alib2data/src/graph/directed/AdjacencyMatrixDirectedGraph.cpp @@ -102,15 +102,12 @@ bool AdjacencyMatrixDirectedGraph::removeNode(const Node &node) adj.erase(search); - auto i = edges.begin(); - while (i != edges.end()) { - if (i->getFromNode() == node) { - edges.erase(i++); - } else if (i->getToNode() == node) { - adj[i->getFromNode()].erase(node); - edges.erase(i++); - } else { - i++; + for (auto& i : edges) { + if (i.getFromNode() == node) { + edges.erase(i); + } else if (i.getToNode() == node) { + adj[i.getFromNode()].erase(node); + edges.erase(i); } } @@ -125,7 +122,7 @@ bool AdjacencyMatrixDirectedGraph::addEdge(const DirectedEdge &edge) edges.insert(edge); - adj[edge.getFromNode()][edge.getToNode()]++; + adj[edge.getFromNode()][edge.getToNode()] += 1; adj[edge.getToNode()]; // insert key return true; diff --git a/alib2data/src/graph/undirected/AdjacencyListUndirectedGraph.cpp b/alib2data/src/graph/undirected/AdjacencyListUndirectedGraph.cpp index b1365d3241..1a4256ff4f 100644 --- a/alib2data/src/graph/undirected/AdjacencyListUndirectedGraph.cpp +++ b/alib2data/src/graph/undirected/AdjacencyListUndirectedGraph.cpp @@ -98,16 +98,13 @@ bool AdjacencyListUndirectedGraph::removeNode(const Node &node) adj.erase(search); - auto i = edges.begin(); - while (i != edges.end()) { - if (i->getFirstNode() == node) { - listRemoveOne(adj[i->getSecondNode()], node); - edges.erase(i++); - } else if (i->getSecondNode() == node) { - listRemoveOne(adj[i->getFirstNode()], node); - edges.erase(i++); - } else { - i++; + for (auto& i : edges) { + if (i.getFirstNode() == node) { + listRemoveOne(adj[i.getSecondNode()], node); + edges.erase(i); + } else if (i.getSecondNode() == node) { + listRemoveOne(adj[i.getFirstNode()], node); + edges.erase(i); } } diff --git a/alib2data/src/graph/undirected/AdjacencyMatrixUndirectedGraph.cpp b/alib2data/src/graph/undirected/AdjacencyMatrixUndirectedGraph.cpp index 25818ebfc4..ba0ba19f12 100644 --- a/alib2data/src/graph/undirected/AdjacencyMatrixUndirectedGraph.cpp +++ b/alib2data/src/graph/undirected/AdjacencyMatrixUndirectedGraph.cpp @@ -103,16 +103,13 @@ bool AdjacencyMatrixUndirectedGraph::removeNode(const Node &node) adj.erase(search); - auto i = edges.begin(); - while (i != edges.end()) { - if (i->getFirstNode() == node) { - adj[i->getSecondNode()].erase(node); - edges.erase(i++); - } else if (i->getSecondNode() == node) { - adj[i->getFirstNode()].erase(node); - edges.erase(i++); - } else { - i++; + for (auto& i : edges) { + if (i.getFirstNode() == node) { + adj[i.getSecondNode()].erase(node); + edges.erase(i); + } else if (i.getSecondNode() == node) { + adj[i.getFirstNode()].erase(node); + edges.erase(i); } } @@ -127,8 +124,8 @@ bool AdjacencyMatrixUndirectedGraph::addEdge(const UndirectedEdge &edge) edges.insert(edge); - adj[edge.getFirstNode()][edge.getSecondNode()]++; - adj[edge.getSecondNode()][edge.getFirstNode()]++; + adj[edge.getFirstNode()][edge.getSecondNode()] += 1; + adj[edge.getSecondNode()][edge.getFirstNode()] += 1; return true; } diff --git a/alib2data/src/label/LabelFromXMLParser.cpp b/alib2data/src/label/LabelFromXMLParser.cpp index 92185e0a59..d92cb36eac 100644 --- a/alib2data/src/label/LabelFromXMLParser.cpp +++ b/alib2data/src/label/LabelFromXMLParser.cpp @@ -41,7 +41,7 @@ Label LabelFromXMLParser::parseLabel(std::deque<sax::Token>::iterator& input, co } bool LabelFromXMLParser::first(const std::deque<sax::Token>::const_iterator& input) const { - if(alib::xmlApi<PrimitiveLabel>::first(input) || alib::xmlApi<ObjectLabel>::first(input) || alib::xmlApi<LabelSetLabel>::first(input) || alib::xmlApi<LabelPairLabel>::first(input)) { + if(alib::xmlApi<PrimitiveLabel>::first(input) || alib::xmlApi<HexavigesimalLabel>::first(input) || alib::xmlApi<ObjectLabel>::first(input) || alib::xmlApi<LabelSetLabel>::first(input) || alib::xmlApi<LabelPairLabel>::first(input) || alib::xmlApi<UniqueLabel>::first(input) ) { return true; } else { return false; diff --git a/alib2data/src/regexp/unbounded/UnboundedRegExpAlternation.cpp b/alib2data/src/regexp/unbounded/UnboundedRegExpAlternation.cpp index 27f3ba0dee..60d258cca1 100644 --- a/alib2data/src/regexp/unbounded/UnboundedRegExpAlternation.cpp +++ b/alib2data/src/regexp/unbounded/UnboundedRegExpAlternation.cpp @@ -116,7 +116,7 @@ int UnboundedRegExpAlternation::compare(const UnboundedRegExpAlternation& other) auto thisIter = this->elements.begin(); auto otherIter = other.elements.begin(); - for(; thisIter != this->elements.end(); thisIter++, otherIter++) { + for(; thisIter != this->elements.end(); ++thisIter, ++otherIter) { int res = (*thisIter)->compare(**otherIter); if(res != 0) return res; } diff --git a/alib2data/src/regexp/unbounded/UnboundedRegExpConcatenation.cpp b/alib2data/src/regexp/unbounded/UnboundedRegExpConcatenation.cpp index 5ff9fc8a44..17e8a1521d 100644 --- a/alib2data/src/regexp/unbounded/UnboundedRegExpConcatenation.cpp +++ b/alib2data/src/regexp/unbounded/UnboundedRegExpConcatenation.cpp @@ -115,7 +115,7 @@ int UnboundedRegExpConcatenation::compare(const UnboundedRegExpConcatenation& ot auto thisIter = this->elements.begin(); auto otherIter = other.elements.begin(); - for(; thisIter != this->elements.end(); thisIter++, otherIter++) { + for(; thisIter != this->elements.end(); ++thisIter, ++otherIter) { int res = (*thisIter)->compare(**otherIter); if(res != 0) return res; } diff --git a/alib2data/src/sax/FromXMLParserHelper.cpp b/alib2data/src/sax/FromXMLParserHelper.cpp index c4708b0abb..67ed03621b 100644 --- a/alib2data/src/sax/FromXMLParserHelper.cpp +++ b/alib2data/src/sax/FromXMLParserHelper.cpp @@ -20,7 +20,7 @@ bool FromXMLParserHelper::isTokenType(const std::deque<Token>::const_iterator& i void FromXMLParserHelper::popToken(std::deque<Token>::iterator& input, Token::TokenType type, const std::string& data) { if (isToken(input, type, data)) { - input++; + ++input; } else { throw ParserException(Token(data, type), *input); } @@ -29,7 +29,7 @@ void FromXMLParserHelper::popToken(std::deque<Token>::iterator& input, Token::To std::string FromXMLParserHelper::popTokenData(std::deque<Token>::iterator& input, Token::TokenType type) { if(isTokenType(input, type)) { std::string result = std::move(*input).moveData(); - input++; + ++input; return result; } else { throw ParserException(Token("?", type), *input); diff --git a/alib2data/src/tree/TreeToRawComposer.cpp b/alib2data/src/tree/TreeToRawComposer.cpp index 433a5694dc..56430c335f 100644 --- a/alib2data/src/tree/TreeToRawComposer.cpp +++ b/alib2data/src/tree/TreeToRawComposer.cpp @@ -61,7 +61,7 @@ void TreeToRawComposer::composePrefixRankedNotation(std::deque<sax::Token>& out, out.emplace_back(sax::Token((std::string) notation[root], sax::Token::TokenType::START_ELEMENT)); index += 1; - for(unsigned i = 0; i < size; i++) { + for(unsigned i = 0; i < size; ++i) { composePrefixRankedNotation(out, index, notation); } diff --git a/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp b/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp index 7a799e6926..ec0e599716 100644 --- a/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp +++ b/alib2data/src/tree/ranked/PrefixRankedBarPattern.cpp @@ -106,7 +106,7 @@ void PrefixRankedBarPattern::arityChecksum(const std::vector<alphabet::RankedSym if(arityChecksumTerminals != 0 || arityChecksumBars != 0 || arityChecksumTypes != 0) throw exception::AlibException("The string does not form a tree"); - for(unsigned i = 0; i < data.size(); i++) { + for(unsigned i = 0; i < data.size(); ++i) { if(data[i] == subtreeWildcard && ((i + 1) == data.size() || data[i + 1].getSymbol() != variablesBar)) throw exception::AlibException("Inconsystency of SubtreeWildcard and variablesBar"); } } diff --git a/alib2data/src/tree/ranked/RankedNode.cpp b/alib2data/src/tree/ranked/RankedNode.cpp index c97145e1cb..30acd5f3e7 100644 --- a/alib2data/src/tree/ranked/RankedNode.cpp +++ b/alib2data/src/tree/ranked/RankedNode.cpp @@ -133,7 +133,7 @@ int RankedNode::compare(const RankedNode& other) const { auto thisIter = this->children.begin(); auto otherIter = other.children.begin(); - for(; thisIter != this->children.end(); thisIter++, otherIter++) { + for(; thisIter != this->children.end(); ++thisIter, ++otherIter) { int res = (*thisIter)->compare(**otherIter); if(res != 0) return res; } @@ -192,7 +192,7 @@ void RankedNode::nicePrint(std::ostream & os, const std::string & prefix, const } os << (std::string) symbol.getSymbol() << "(" << symbol.getRank().getData() << ")" << std::endl; - for (unsigned int i = 0; i < children.size(); i++) { + for (unsigned int i = 0; i < children.size(); ++i) { os << nextPrefix << "|" << std::endl; children[i] -> nicePrint(os, nextPrefix, i == children.size()-1); } diff --git a/alib2data/src/tree/unranked/UnrankedNode.cpp b/alib2data/src/tree/unranked/UnrankedNode.cpp index 02f3779a47..32a0ca32ad 100644 --- a/alib2data/src/tree/unranked/UnrankedNode.cpp +++ b/alib2data/src/tree/unranked/UnrankedNode.cpp @@ -136,7 +136,7 @@ int UnrankedNode::compare(const UnrankedNode& other) const { auto thisIter = this->children.begin(); auto otherIter = other.children.begin(); - for(; thisIter != this->children.end(); thisIter++, otherIter++) { + for(; thisIter != this->children.end(); ++thisIter, ++otherIter) { int res = (*thisIter)->compare(**otherIter); if(res != 0) return res; } @@ -195,7 +195,7 @@ void UnrankedNode::nicePrint(std::ostream & os, const std::string & prefix, cons } os << (std::string) symbol << std::endl; - for (unsigned int i = 0; i < children.size(); i++) { + for (unsigned int i = 0; i < children.size(); ++i) { os << nextPrefix << "|" << std::endl; children[i] -> nicePrint(os, nextPrefix, i == children.size()-1); } diff --git a/alib2std/src/extensions/list.hpp b/alib2std/src/extensions/list.hpp index 389234eb55..65fe68e730 100644 --- a/alib2std/src/extensions/list.hpp +++ b/alib2std/src/extensions/list.hpp @@ -32,7 +32,7 @@ struct compare<list<T>> { if(first.size() > second.size()) return 1; compare<T> comp; - for(auto iterF = first.begin(), iterS = second.begin(); iterF != first.end(); iterF++, iterS++) { + for(auto iterF = first.begin(), iterS = second.begin(); iterF != first.end(); ++iterF, ++iterS) { int res = comp(*iterF, *iterS); if(res != 0) return res; } diff --git a/alib2std/src/extensions/map.hpp b/alib2std/src/extensions/map.hpp index 9b1f6313a0..6113320317 100644 --- a/alib2std/src/extensions/map.hpp +++ b/alib2std/src/extensions/map.hpp @@ -34,7 +34,7 @@ struct compare<map<T, R>> { if(first.size() > second.size()) return 1; compare<std::pair<T, R>> comp; - for(auto iterF = first.begin(), iterS = second.begin(); iterF != first.end(); iterF++, iterS++) { + for(auto iterF = first.begin(), iterS = second.begin(); iterF != first.end(); ++iterF, ++iterS) { int res = comp(*iterF, *iterS); if(res != 0) return res; } diff --git a/alib2std/src/extensions/set.hpp b/alib2std/src/extensions/set.hpp index 13ff62354a..45d73931d0 100644 --- a/alib2std/src/extensions/set.hpp +++ b/alib2std/src/extensions/set.hpp @@ -32,7 +32,7 @@ struct compare<set<T>> { if(first.size() > second.size()) return 1; compare<T> comp; - for(auto iterF = first.begin(), iterS = second.begin(); iterF != first.end(); iterF++, iterS++) { + for(auto iterF = first.begin(), iterS = second.begin(); iterF != first.end(); ++iterF, ++iterS) { int res = comp(*iterF, *iterS); if(res != 0) return res; } diff --git a/alib2std/src/extensions/unordered_map.hpp b/alib2std/src/extensions/unordered_map.hpp index e05f46314f..2413ef446d 100644 --- a/alib2std/src/extensions/unordered_map.hpp +++ b/alib2std/src/extensions/unordered_map.hpp @@ -32,7 +32,7 @@ struct compare<unordered_map<T, R>> { if(first.size() > second.size()) return 1; compare<R> comp; - for(auto iter = first.begin(); iter != first.end(); iter++) { + for(auto iter = first.begin(); iter != first.end(); ++iter) { auto search = second.find(iter->first); if(search == second.end()) return -1; int res = comp(iter->second, search->second); diff --git a/alib2std/src/extensions/vector.hpp b/alib2std/src/extensions/vector.hpp index 28397c3caa..ec101e339a 100644 --- a/alib2std/src/extensions/vector.hpp +++ b/alib2std/src/extensions/vector.hpp @@ -199,7 +199,7 @@ struct compare<vector<T>> { if(first.size() > second.size()) return 1; compare<T> comp; - for(auto iterF = first.begin(), iterS = second.begin(); iterF != first.end(); iterF++, iterS++) { + for(auto iterF = first.begin(), iterS = second.begin(); iterF != first.end(); ++iterF, ++iterS) { int res = comp(*iterF, *iterS); if(res != 0) return res; } @@ -214,7 +214,7 @@ struct compare<ptr_vector<T>> { if(first.size() > second.size()) return 1; compare<T> comp; - for(auto iterF = first.begin(), iterS = second.begin(); iterF != first.end(); iterF++, iterS++) { + for(auto iterF = first.begin(), iterS = second.begin(); iterF != first.end(); ++iterF, ++iterS) { int res = comp(*iterF, *iterS); if(res != 0) return res; } -- GitLab