void (int shiftInToken) { if (myBaseIterator.atEnd()) { myLayerIterator = null; myCurrentMapper = null; return; } MappedRange mapping = getSegments().myRanges[((HighlighterIteratorImpl)myBaseIterator).currentIndex()]; if (mapping != null) { myCurrentMapper = mapping.mapper; myLayerIterator = myCurrentMapper.createIterator(mapping, shiftInToken); myLayerStartOffset = myBaseIterator.getStart() - mapping.range.getStartOffset(); } else { myCurrentMapper = null; myLayerIterator = null; } }