1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
namespace saw {
template<typename BaseSchema, typename... Elements>
data<schema::Unit<BaseSchema, Elements...>, encode::Native>
data<schema::Unit<BaseSchema, Elements...>, encode::Native>::operator+(const
data<schema::Unit<BaseSchema, Elements...>, encode::Native>& rhs) const {
auto add = dat_ + rhs.dat_;
return add;
}
template<typename BaseSchema, typename... Elements>
data<schema::Unit<BaseSchema, Elements...>, encode::Native>
data<schema::Unit<BaseSchema, Elements...>, encode::Native>::operator-(const
data<schema::Unit<BaseSchema, Elements...>, encode::Native>& rhs) const {
auto sub = dat_ - rhs.dat_;
return sub;
}
template<typename BaseSchema, typename... Elements>
bool
data<schema::Unit<BaseSchema, Elements...>, encode::Native>::operator==(const data<Schema, encode::Native>& rhs) const {
return dat_ == rhs.dat_;
}
template<typename BaseSchema, typename... Elements>
template<typename UnitRhs>
data<typename unit_multiplication<schema::Unit<BaseSchema,Elements...>, UnitRhs>::Schema, encode::Native>
data<schema::Unit<BaseSchema, Elements...>, encode::Native>::operator*(const
data<UnitRhs, encode::Native>& rhs) const {
auto mult = dat_ * rhs.dat_;
return mult;
}
template<typename BaseSchema, typename... Elements>
template<typename UnitRhs>
data<typename unit_division<schema::Unit<BaseSchema,Elements...>, UnitRhs>::Schema, encode::Native>
data<schema::Unit<BaseSchema, Elements...>, encode::Native>::operator/(const
data<UnitRhs, encode::Native>& rhs) const {
auto div = dat_ / rhs.dat_;
return div;
}
}
|