Skip to content

Commit 781f216

Browse files
committed
AK: Add a TemporaryChange helper class.
1 parent 8cc6e30 commit 781f216

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

AK/TemporaryChange.h

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
#pragma once
2+
3+
namespace AK {
4+
5+
template<typename T>
6+
class TemporaryChange {
7+
public:
8+
TemporaryChange(T& variable, T value) : m_variable(variable), m_old_value(variable) { m_variable = value; }
9+
~TemporaryChange() { m_variable = m_old_value; }
10+
11+
private:
12+
T& m_variable;
13+
T m_old_value;
14+
};
15+
16+
}
17+
18+
using AK::TemporaryChange;

0 commit comments

Comments
 (0)