Skip to content

Commit 3417d7a

Browse files
committed
Saved Variable improvement
1 parent 585222e commit 3417d7a

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

os/framework/SavedVariable.h

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,5 +88,30 @@ class SavedVariable
8888

8989
bool operator = (T new_value) {return Set(new_value);}
9090

91+
bool operator == (T new_value) {return value == new_value;}
92+
bool operator != (T new_value) {return value != new_value;}
93+
bool operator > (T new_value) {return value == new_value;}
94+
bool operator < (T new_value) {return value < new_value;}
95+
bool operator >= (T new_value) {return value >= new_value;}
96+
bool operator <= (T new_value) {return value <= new_value;}
97+
98+
T operator + (T operation_value) {return value + operation_value;}
99+
T operator - (T operation_value) {return value - operation_value;}
100+
T operator * (T operation_value) {return value * operation_value;}
101+
T operator / (T operation_value) {return value / operation_value;}
102+
T operator % (T operation_value) {return value % operation_value;}
103+
104+
T& operator += (T operation_value) {Set(value + operation_value); return *value;}
105+
T& operator -= (T operation_value) {Set(value - operation_value); return *value;}
106+
T& operator *= (T operation_value) {Set(value * operation_value); return *value;}
107+
T& operator /= (T operation_value) {Set(value / operation_value); return *value;}
108+
T& operator %= (T operation_value) {Set(value % operation_value); return *value;}
109+
110+
T& operator ++ () {Set(value + 1); return *value;};
111+
T operator ++ (int) {T temp_value = value; Set(value + 1); return temp_value;};
112+
113+
T& operator -- () {Set(value + 1); return *value;};
114+
T operator -- (int) {T temp_value = value; Set(value - 1); return temp_value;};
115+
91116
operator T() {return Get();}
92117
};

0 commit comments

Comments
 (0)