diff options
| author | ljfa-ag <ljfa-ag@web.de> | 2015-06-23 21:33:17 +0200 |
|---|---|---|
| committer | ljfa-ag <ljfa-ag@web.de> | 2015-06-23 22:00:28 +0200 |
| commit | 50d94e7d513f68d25cd5e72de880bb6f78de50e7 (patch) | |
| tree | df32393408ee93c067c10f303a3b654a47713d2f /include | |
| parent | 669a1c4b24d3993dc29917daa60bb46dd9e4fd3b (diff) | |
| download | Project-Tick-50d94e7d513f68d25cd5e72de880bb6f78de50e7.tar.gz Project-Tick-50d94e7d513f68d25cd5e72de880bb6f78de50e7.zip | |
Add methods and tests to tag_primitive
Diffstat (limited to 'include')
| -rw-r--r-- | include/tag_primitive.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/include/tag_primitive.h b/include/tag_primitive.h index 3b8ac51237..397ea64da3 100644 --- a/include/tag_primitive.h +++ b/include/tag_primitive.h @@ -45,8 +45,11 @@ public: tag_primitive(T value = 0); tag_primitive& operator=(T value); + void set(T value); + operator T&(); operator T() const; + T get() const; tag_type get_type() const noexcept override; @@ -75,12 +78,30 @@ tag_primitive<T>& tag_primitive<T>::operator=(T val) } template<class T> +void tag_primitive<T>::set(T val) +{ + value = val; +} + +template<class T> +tag_primitive<T>::operator T&() +{ + return value; +} + +template<class T> tag_primitive<T>::operator T() const { return value; } template<class T> +T tag_primitive<T>::get() const +{ + return value; +} + +template<class T> tag_type tag_primitive<T>::get_type() const noexcept { return type; |
