Add group value iterators operator-
This commit is contained in:
parent
ef6ef081d8
commit
0633aacc63
2 changed files with 12 additions and 2 deletions
|
|
@ -52,7 +52,7 @@ namespace psemek::group
|
||||||
|
|
||||||
struct value_iterator
|
struct value_iterator
|
||||||
{
|
{
|
||||||
using difference_type = int;
|
using difference_type = Repr;
|
||||||
using value_type = cyclic<N, Repr>;
|
using value_type = cyclic<N, Repr>;
|
||||||
using pointer = value_type *;
|
using pointer = value_type *;
|
||||||
using reference = value_type &;
|
using reference = value_type &;
|
||||||
|
|
@ -75,6 +75,11 @@ namespace psemek::group
|
||||||
{
|
{
|
||||||
return it1.repr == it2.repr;
|
return it1.repr == it2.repr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
friend auto operator - (value_iterator const & it1, value_iterator const & it2)
|
||||||
|
{
|
||||||
|
return it2.repr - it1.repr;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
static auto values()
|
static auto values()
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@ namespace psemek::group
|
||||||
|
|
||||||
struct value_iterator
|
struct value_iterator
|
||||||
{
|
{
|
||||||
using difference_type = int;
|
using difference_type = Repr;
|
||||||
using value_type = dihedral<N, Repr>;
|
using value_type = dihedral<N, Repr>;
|
||||||
using pointer = value_type *;
|
using pointer = value_type *;
|
||||||
using reference = value_type &;
|
using reference = value_type &;
|
||||||
|
|
@ -107,6 +107,11 @@ namespace psemek::group
|
||||||
{
|
{
|
||||||
return it1.repr == it2.repr;
|
return it1.repr == it2.repr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
friend auto operator - (value_iterator const & it1, value_iterator const & it2)
|
||||||
|
{
|
||||||
|
return it2.repr - it1.repr;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
static auto values()
|
static auto values()
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue