From 02fa82d51d8cc5991170c7faafdd562a731f844a Mon Sep 17 00:00:00 2001
From: Jan Travnicek <Jan.Travnicek@fit.cvut.cz>
Date: Tue, 1 Aug 2017 20:38:56 +0200
Subject: [PATCH] add some const references in determinisation algo

---
 .../src/automaton/determinize/DeterminizeRHDPDAPart.cxx   | 8 ++++----
 .../src/automaton/determinize/DeterminizeVPAPart.cxx      | 8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/alib2algo/src/automaton/determinize/DeterminizeRHDPDAPart.cxx b/alib2algo/src/automaton/determinize/DeterminizeRHDPDAPart.cxx
index ea9c065ff8..b757f4e103 100644
--- a/alib2algo/src/automaton/determinize/DeterminizeRHDPDAPart.cxx
+++ b/alib2algo/src/automaton/determinize/DeterminizeRHDPDAPart.cxx
@@ -65,7 +65,7 @@ void ret(const DefaultStateType& state, const DefaultSymbolType& pdaSymbol, cons
 
 		const DefaultStateType& q = std::get<0>(transition.first);
 		for(const auto& to : transition.second) {
-			const DefaultStateType q1 = to.first;
+			const DefaultStateType& q1 = to.first;
 			const DefaultSymbolType& gamma = to.second;
 
 			for(const auto& entry : S) {
@@ -159,14 +159,14 @@ void local(const DefaultStateType& state, const std::variant<DefaultEpsilonType,
 	std::set<std::pair<DefaultStateType, DefaultStateType>> S1;
 
 	for(const auto& entry : S) {
-		DefaultStateType q = entry.first;
-		DefaultStateType q2 = entry.second;
+		const DefaultStateType & q = entry.first;
+		const DefaultStateType & q2 = entry.second;
 		for(const auto& transition : nondeterministic.getLocalTransitions()) {
 			if(q2 != transition.first.first) continue;
 			if(input != transition.first.second) continue;
 
 			for(const auto& to : transition.second) {
-				DefaultStateType q1 = to;
+				const DefaultStateType & q1 = to;
 
 				S1.insert(std::make_pair(q, q1));
 			}
diff --git a/alib2algo/src/automaton/determinize/DeterminizeVPAPart.cxx b/alib2algo/src/automaton/determinize/DeterminizeVPAPart.cxx
index 031355d259..15493522c4 100644
--- a/alib2algo/src/automaton/determinize/DeterminizeVPAPart.cxx
+++ b/alib2algo/src/automaton/determinize/DeterminizeVPAPart.cxx
@@ -57,7 +57,7 @@ void ret(const DefaultStateType& state, const DefaultSymbolType& pdaSymbol, cons
 
 		const DefaultStateType& q = std::get<0>(transition.first);
 		for(const auto& to : transition.second) {
-			const DefaultStateType q1 = to.first;
+			const DefaultStateType& q1 = to.first;
 			const DefaultSymbolType& gamma = to.second;
 
 			for(const auto& entry : S) {
@@ -137,14 +137,14 @@ void local(const DefaultStateType& state, const DefaultSymbolType& input, const
 	std::set<std::pair<DefaultStateType, DefaultStateType>> S1;
 
 	for(const auto& entry : S) {
-		DefaultStateType q = entry.first;
-		DefaultStateType q2 = entry.second;
+		const DefaultStateType & q = entry.first;
+		const DefaultStateType & q2 = entry.second;
 		for(const auto& transition : nondeterministic.getLocalTransitions()) {
 			if(q2 != transition.first.first) continue;
 			if(input != transition.first.second) continue;
 
 			for(const auto& to : transition.second) {
-				DefaultStateType q1 = to;
+				const DefaultStateType & q1 = to;
 
 				S1.insert(std::make_pair(q, q1));
 			}
-- 
GitLab