docs: public void forEach(final MetaData metaData)
      {
          int counterId = 0;
  
          final AtomicBuffer metaDataBuffer = this.metaDataBuffer;
  
          for (int i = 0, capacity = metaDataBuffer.capacity(); i < capacity; i += METADATA_LENGTH)
          {
              final int recordStatus = metaDataBuffer.getIntVolatile(i);
              if (RECORD_ALLOCATED == recordStatus)
              {
                  final int typeId = metaDataBuffer.getInt(i + TYPE_ID_OFFSET);
                  final String label = labelValue(metaDataBuffer, i);
                  final DirectBuffer keyBuffer = new UnsafeBuffer(metaDataBuffer, i + KEY_OFFSET, MAX_KEY_LENGTH);
  
                  metaData.accept(counterId, typeId, keyBuffer, label);
              }
              else if (RECORD_UNUSED == recordStatus)
              {
                  break;
              }
  
              counterId++;
          }
      }