void TreeChunk::verifyTreeChunkList() const {
  TreeChunk* nextTC = (TreeChunk*)next();
  if (prev() != NULL) { // interior list node shouldn'r have tree fields
    assert(embedded_list()->parent() == NULL && embedded_list()->left() == NULL &&
           embedded_list()->right()  == NULL, "should be clear");
  }
  if (nextTC != NULL) {
    assert(as_TreeChunk(nextTC->prev()) == this, "broken chain");
    assert(nextTC->size() == size(), "wrong size");
    nextTC->verifyTreeChunkList();
  }
}
예제 #2
0
 // Initialize fields in a TreeChunk that should be
 // initialized when the TreeChunk is being added to
 // a free list in the tree.
 void initialize() { embedded_list()->initialize(); }