From b96a054ea41b0ac7b1306fc993689cd761817892 Mon Sep 17 00:00:00 2001 From: koldo Date: Wed, 2 Oct 2019 06:27:00 +0000 Subject: [PATCH] Functions4U: Added TempAssign git-svn-id: svn://ultimatepp.org/upp/trunk@13623 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- bazaar/Functions4U/Functions4U.h | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/bazaar/Functions4U/Functions4U.h b/bazaar/Functions4U/Functions4U.h index 52d32198b..99f8dd58c 100644 --- a/bazaar/Functions4U/Functions4U.h +++ b/bazaar/Functions4U/Functions4U.h @@ -589,7 +589,19 @@ private: } else \ return v - +template +struct TempAssign { + TempAssign(T &_val, T set) { + old = _val; + _val = set; + val = &_val; + } + ~TempAssign() { + *val = old; + } + + T *val, old; +}; template class ThreadSafe {