Home | History | Annotate | Download | only in alg.rotate

Lines Matching refs:ib

25 //     int ib[std::size(ia)] = {0};
29 // auto it = std::rotate_copy(std::begin(ia), middle, std::end(ia), std::begin(ib));
31 // return std::distance(std::begin(ib), it) == std::size(ia)
32 // && std::equal (std::begin(ia), middle, std::begin(ib) + std::size(ia) - N)
33 // && std::equal (middle, std::end(ia), std::begin(ib))
44 int ib[sa] = {0};
46 OutIter r = std::rotate_copy(InIter(ia), InIter(ia), InIter(ia), OutIter(ib));
47 assert(base(r) == ib);
49 r = std::rotate_copy(InIter(ia), InIter(ia), InIter(ia+1), OutIter(ib));
50 assert(base(r) == ib+1);
51 assert(ib[0] == 0);
53 r = std::rotate_copy(InIter(ia), InIter(ia+1), InIter(ia+1), OutIter(ib));
54 assert(base(r) == ib+1);
55 assert(ib[0] == 0);
57 r = std::rotate_copy(InIter(ia), InIter(ia), InIter(ia+2), OutIter(ib));
58 assert(base(r) == ib+2);
59 assert(ib[0] == 0);
60 assert(ib[1] == 1);
62 r = std::rotate_copy(InIter(ia), InIter(ia+1), InIter(ia+2), OutIter(ib));
63 assert(base(r) == ib+2);
64 assert(ib[0] == 1);
65 assert(ib[1] == 0);
67 r = std::rotate_copy(InIter(ia), InIter(ia+2), InIter(ia+2), OutIter(ib));
68 assert(base(r) == ib+2);
69 assert(ib[0] == 0);
70 assert(ib[1] == 1);
72 r = std::rotate_copy(InIter(ia), InIter(ia), InIter(ia+3), OutIter(ib));
73 assert(base(r) == ib+3);
74 assert(ib[0] == 0);
75 assert(ib[1] == 1);
76 assert(ib[2] == 2);
78 r = std::rotate_copy(InIter(ia), InIter(ia+1), InIter(ia+3), OutIter(ib));
79 assert(base(r) == ib+3);
80 assert(ib[0] == 1);
81 assert(ib[1] == 2);
82 assert(ib[2] == 0);
84 r = std::rotate_copy(InIter(ia), InIter(ia+2), InIter(ia+3), OutIter(ib));
85 assert(base(r) == ib+3);
86 assert(ib[0] == 2);
87 assert(ib[1] == 0);
88 assert(ib[2] == 1);
90 r = std::rotate_copy(InIter(ia), InIter(ia+3), InIter(ia+3), OutIter(ib));
91 assert(base(r) == ib+3);
92 assert(ib[0] == 0);
93 assert(ib[1] == 1);
94 assert(ib[2] == 2);
96 r = std::rotate_copy(InIter(ia), InIter(ia), InIter(ia+4), OutIter(ib));
97 assert(base(r) == ib+4);
98 assert(ib[0] == 0);
99 assert(ib[1] == 1);
100 assert(ib[2] == 2);
101 assert(ib[3] == 3);
103 r = std::rotate_copy(InIter(ia), InIter(ia+1), InIter(ia+4), OutIter(ib));
104 assert(base(r) == ib+4);
105 assert(ib[0] == 1);
106 assert(ib[1] == 2);
107 assert(ib[2] == 3);
108 assert(ib[3] == 0);
110 r = std::rotate_copy(InIter(ia), InIter(ia+2), InIter(ia+4), OutIter(ib));
111 assert(base(r) == ib+4);
112 assert(ib[0] == 2);
113 assert(ib[1] == 3);
114 assert(ib[2] == 0);
115 assert(ib[3] == 1);
117 r = std::rotate_copy(InIter(ia), InIter(ia+3), InIter(ia+4), OutIter(ib));
118 assert(base(r) == ib+4);
119 assert(ib[0] == 3);
120 assert(ib[1] == 0);
121 assert(ib[2] == 1);
122 assert(ib[3] == 2);
124 r = std::rotate_copy(InIter(ia), InIter(ia+4), InIter(ia+4), OutIter(ib));
125 assert(base(r) == ib+4);
126 assert(ib[0] == 0);
127 assert(ib[1] == 1);
128 assert(ib[2] == 2);
129 assert(ib[3] == 3);