Lines Matching refs:index

37 	inline	bool				Insert(const Element& element, int32 index);
38 inline bool InsertUninitialized(int32 index, int32 count);
39 inline bool Remove(int32 index, int32 count = 1);
44 inline Element& ElementAt(int32 index);
45 inline const Element& ElementAt(int32 index) const;
47 inline Element& operator[](int32 index);
48 inline const Element& operator[](int32 index) const;
55 bool _Resize(int32 index, int32 delta);
115 Array<Element>::Insert(const Element& element, int32 index)
117 if (index < 0 || index > fSize)
118 index = fSize;
120 if (!_Resize(index, 1))
123 fElements[index] = element;
131 Array<Element>::InsertUninitialized(int32 index, int32 count)
133 if (index < 0 || index > fSize || count < 0)
138 if (!_Resize(index, count))
148 Array<Element>::Remove(int32 index, int32 count)
150 if (index < 0 || count < 0 || index + count > fSize) {
153 snprintf(buffer, sizeof(buffer), "Array::Remove(): index: %" B_PRId32
154 ", count: %" B_PRId32 ", size: %" B_PRId32, index, count, fSize);
162 if (index + count < fSize) {
163 memmove(fElements + index, fElements + index + count,
164 sizeof(Element) * (fSize - index - count));
167 _Resize(index, -count);
199 Array<Element>::ElementAt(int32 index)
201 return fElements[index];
207 Array<Element>::ElementAt(int32 index) const
209 return fElements[index];
215 Array<Element>::operator[](int32 index)
217 return fElements[index];
223 Array<Element>::operator[](int32 index) const
225 return fElements[index];
246 Array<Element>::_Resize(int32 index, int32 delta)
256 if (index < fSize) {
259 memmove(fElements + index + delta, fElements + index,
260 (fSize - index) * sizeof(Element));
261 } else if (index < fSize + delta) {
263 memcpy(fElements + index, fElements + index - delta,
264 (fSize - index + delta) * sizeof(Element));
276 if (index > 0)
277 memcpy(elements, fElements, index * sizeof(Element));
278 if (index < fSize) {
281 memcpy(elements + index + delta, fElements + index,
282 (fSize - index) * sizeof(Element));
283 } else if (index < fSize + delta) {
285 memcpy(elements + index, fElements + index - delta,
286 (fSize - index + delta) * sizeof(Element));