Lines Matching refs:position
45 static inline unsigned segmentIndex(unsigned position)
47 return position / segmentSize;
50 static inline unsigned offsetInSegment(unsigned position)
52 return position & segmentPositionMask;
236 size_t position = 0;
237 while (size_t length = data->getSomeData(segment, position)) {
239 position += length;
305 unsigned position = m_buffer.size();
306 while (unsigned segmentSize = getSomeData(segment, position)) {
308 position += segmentSize;
310 ASSERT(position == clone->size());
331 unsigned SharedBuffer::getSomeData(const char*& someData, unsigned position) const
335 if (position >= totalSize) {
340 ASSERT_WITH_SECURITY_IMPLICATION(position < m_size);
342 if (position < consecutiveSize) {
343 someData = m_buffer.data() + position;
344 return consecutiveSize - position;
347 position -= consecutiveSize;
350 unsigned segment = segmentIndex(position);
355 unsigned positionInSegment = offsetInSegment(position);
357 return segment == segments - 1 ? segmentedSize - position : segmentSize - positionInSegment;
371 unsigned position = 0;
372 while (unsigned segmentSize = getSomeData(segment, position)) {
373 memcpy(static_cast<char*>(arrayBuffer->data()) + position, segment, segmentSize);
374 position += segmentSize;
377 if (position != arrayBuffer->byteLength()) {
392 unsigned position = 0;
393 while (unsigned segmentSize = getSomeData(segment, position)) {
394 memcpy(buffer + position, segment, segmentSize);
395 position += segmentSize;
398 if (position != bufferLength) {