diff options
Diffstat (limited to 'src/crepe/util/Proxy.hpp')
-rw-r--r-- | src/crepe/util/Proxy.hpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/crepe/util/Proxy.hpp b/src/crepe/util/Proxy.hpp index c2cae93..ef2b69f 100644 --- a/src/crepe/util/Proxy.hpp +++ b/src/crepe/util/Proxy.hpp @@ -2,21 +2,26 @@ #include "Proxy.h" -namespace crepe::util { +namespace crepe { template <typename T> -Proxy<T>::Proxy(ValueBroker<T> broker) : broker(broker) { } +Proxy<T>::Proxy(ValueBroker<T> broker) : broker(broker) {} template <typename T> -Proxy<T> & Proxy<T>::operator = (const T & val) { +Proxy<T> & Proxy<T>::operator=(const T & val) { this->broker.set(val); return *this; } template <typename T> -Proxy<T>::operator const T & () const { - return this->broker.get(); +Proxy<T> & Proxy<T>::operator=(Proxy & proxy) { + this->broker.set(T(proxy)); + return *this; } +template <typename T> +Proxy<T>::operator const T &() { + return this->broker.get(); } +} // namespace crepe |