< prev index next >

src/share/vm/oops/objArrayKlass.cpp

Print this page




 449   }
 450 }
 451 
 452 #endif //PRODUCT
 453 
 454 static int max_objArray_print_length = 4;
 455 
 456 void ObjArrayKlass::oop_print_value_on(oop obj, outputStream* st) {
 457   assert(obj->is_objArray(), "must be objArray");
 458   st->print("a ");
 459   element_klass()->print_value_on(st);
 460   int len = objArrayOop(obj)->length();
 461   st->print("[%d] ", len);
 462   obj->print_address_on(st);
 463   if (NOT_PRODUCT(PrintOopAddress ||) PrintMiscellaneous && (WizardMode || Verbose)) {
 464     st->print("{");
 465     for (int i = 0; i < len; i++) {
 466       if (i > max_objArray_print_length) {
 467         st->print("..."); break;
 468       }
 469       st->print(" "INTPTR_FORMAT, (intptr_t)(void*)objArrayOop(obj)->obj_at(i));
 470     }
 471     st->print(" }");
 472   }
 473 }
 474 
 475 const char* ObjArrayKlass::internal_name() const {
 476   return external_name();
 477 }
 478 
 479 
 480 // Verification
 481 
 482 void ObjArrayKlass::verify_on(outputStream* st) {
 483   ArrayKlass::verify_on(st);
 484   guarantee(element_klass()->is_klass(), "should be klass");
 485   guarantee(bottom_klass()->is_klass(), "should be klass");
 486   Klass* bk = bottom_klass();
 487   guarantee(bk->oop_is_instance() || bk->oop_is_typeArray(),  "invalid bottom klass");
 488 }
 489 


 449   }
 450 }
 451 
 452 #endif //PRODUCT
 453 
 454 static int max_objArray_print_length = 4;
 455 
 456 void ObjArrayKlass::oop_print_value_on(oop obj, outputStream* st) {
 457   assert(obj->is_objArray(), "must be objArray");
 458   st->print("a ");
 459   element_klass()->print_value_on(st);
 460   int len = objArrayOop(obj)->length();
 461   st->print("[%d] ", len);
 462   obj->print_address_on(st);
 463   if (NOT_PRODUCT(PrintOopAddress ||) PrintMiscellaneous && (WizardMode || Verbose)) {
 464     st->print("{");
 465     for (int i = 0; i < len; i++) {
 466       if (i > max_objArray_print_length) {
 467         st->print("..."); break;
 468       }
 469       st->print(" " INTPTR_FORMAT, (intptr_t)(void*)objArrayOop(obj)->obj_at(i));
 470     }
 471     st->print(" }");
 472   }
 473 }
 474 
 475 const char* ObjArrayKlass::internal_name() const {
 476   return external_name();
 477 }
 478 
 479 
 480 // Verification
 481 
 482 void ObjArrayKlass::verify_on(outputStream* st) {
 483   ArrayKlass::verify_on(st);
 484   guarantee(element_klass()->is_klass(), "should be klass");
 485   guarantee(bottom_klass()->is_klass(), "should be klass");
 486   Klass* bk = bottom_klass();
 487   guarantee(bk->oop_is_instance() || bk->oop_is_typeArray(),  "invalid bottom klass");
 488 }
 489 
< prev index next >