Lines Matching full:begin
128 // fill the range [begin, end) with copies of value, return nothing.
129 // fill_n the range [begin, begin + n) with copies of value, return
130 // the pointer at begin + n.
133 // begin and end params. Fix this when iterator are defined.
137 template<typename _T> static void fill(_T *begin, const _T *end,
140 for (; begin < end; ++begin)
141 *begin = value;
147 template<typename _T> static void fill(_T *begin, const _T *end,
152 for (; begin < end; ++begin)
153 *begin = tmp;
157 template<typename _T> void fill(_T *begin, _T *end, const _T& value)
160 __fill<is_scalar>::fill(begin, end, value);
164 inline void fill(unsigned char *begin, unsigned char *end,
167 if (begin < end)
170 std::memset(begin, tmp, end - begin);
174 inline void fill(signed char *begin, signed char *end, const signed char& value)
176 if (begin < end)
179 std::memset(begin, tmp, end - begin);
183 inline void fill(char *begin, char *end, const char& value)
185 if (begin < end)
188 std::memset(begin, tmp, end - begin);
194 template<typename _T> static _T *fill_n(_T *begin, size_t num,
197 for (size_t i = 0; i < num; ++i, ++begin)
199 *begin = value;
201 return begin;
207 template<typename _T> static _T *fill_n(_T *begin, size_t num,
212 for (size_t i = 0; i < num; ++i, ++begin)
214 *begin = tmp;
216 return begin;
220 template<typename _T> _T *fill_n(_T *begin, size_t n, const _T& value)
223 return __fill_n<is_scalar>::fill_n(begin, n, value);
228 inline unsigned char *fill_n(unsigned char *begin, size_t num,
232 std::memset(begin, tmp, num);
233 return begin + num;
236 inline signed char *fill_n(signed char *begin, size_t num,
240 std::memset(begin, tmp, num);
241 return begin + num;
244 inline char *fill_n(char *begin, size_t num, const char& value)
247 std::memset(begin, tmp, num);
248 return begin + num;