diff options
Diffstat (limited to 'src/unit.h')
-rw-r--r-- | src/unit.h | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/src/unit.h b/src/unit.h deleted file mode 100644 index a8e8320..0000000 --- a/src/unit.h +++ /dev/null @@ -1,49 +0,0 @@ -#pragma once - -#include "unit_reduction.h" - -namespace kel { -template<typename UnitType, int64_t Exponent> -struct unit_component {}; - -template<typename StorageT, typename... T> -class unit; - -template<typename StorageT, typename... UnitTypes, int64_t... Exponents> -class unit<StorageT, unit_component<UnitTypes, Exponents>...> { -public: - using value_type = StorageT; - - unit() = default; - - unit(const unit<StorageT,unit_component<UnitTypes, Exponents>...>&) = default; - unit(unit<StorageT,unit_component<UnitTypes,Exponents>...>&&) = default; - - unit<StorageT,unit_component<UnitTypes,Exponents>...>& operator=(const unit<StorageT,unit_component<UnitTypes,Exponents>...>&) = default; - unit<StorageT,unit_component<UnitTypes,Exponents>...>& operator=(unit<StorageT,unit_component<UnitTypes,Exponents>...>&&) = default; - - unit(const value_type&); - unit(value_type&&); - - unit<StorageT,unit_component<UnitTypes,Exponents>...>& operator=(const value_type&); - unit<StorageT,unit_component<UnitTypes,Exponents>...>& operator=(value_type&&); - - unit<StorageT,unit_component<UnitTypes,Exponents>...> operator+(const unit<StorageT,unit_component<UnitTypes,Exponents>...>& rhs); - unit<StorageT,unit_component<UnitTypes,Exponents>...> operator-(const unit<StorageT,unit_component<UnitTypes,Exponents>...>& rhs); - - template<typename... Trhs> - typename unit_multiplication<unit<StorageT,unit_component<UnitTypes,Exponents>...>, unit<StorageT,Trhs...>>::type operator*(const unit<StorageT, Trhs...>& rhs); - - template<typename... Trhs> - typename unit_multiplication<unit<StorageT, unit_component<UnitTypes,Exponents>...>, typename unit_invert<StorageT,Trhs...>::type>::type operator/(const unit<StorageT, Trhs...>& rhs); - - value_type data() const; -private: - value_type value; -}; - -template<typename S> -using scalar = unit<S>; -} - -#include "unit.tmpl.h" |