@@ -434,54 +434,8 @@ BasicJsonStringifier::Result BasicJsonStringifier::SerializeJSArray(
434
434
uint32_t length = 0 ;
435
435
CHECK (object->length ()->ToArrayLength (&length));
436
436
builder_.AppendCharacter (' [' );
437
- switch (object->GetElementsKind ()) {
438
- case FAST_SMI_ELEMENTS: {
439
- Handle <FixedArray> elements (
440
- FixedArray::cast (object->elements ()), isolate_);
441
- for (uint32_t i = 0 ; i < length; i++) {
442
- if (i > 0 ) builder_.AppendCharacter (' ,' );
443
- SerializeSmi (Smi::cast (elements->get (i)));
444
- }
445
- break ;
446
- }
447
- case FAST_DOUBLE_ELEMENTS: {
448
- // Empty array is FixedArray but not FixedDoubleArray.
449
- if (length == 0 ) break ;
450
- Handle <FixedDoubleArray> elements (
451
- FixedDoubleArray::cast (object->elements ()), isolate_);
452
- for (uint32_t i = 0 ; i < length; i++) {
453
- if (i > 0 ) builder_.AppendCharacter (' ,' );
454
- SerializeDouble (elements->get_scalar (i));
455
- }
456
- break ;
457
- }
458
- case FAST_ELEMENTS: {
459
- Handle <FixedArray> elements (
460
- FixedArray::cast (object->elements ()), isolate_);
461
- for (uint32_t i = 0 ; i < length; i++) {
462
- if (i > 0 ) builder_.AppendCharacter (' ,' );
463
- Result result =
464
- SerializeElement (isolate_,
465
- Handle <Object>(elements->get (i), isolate_),
466
- i);
467
- if (result == SUCCESS) continue ;
468
- if (result == UNCHANGED) {
469
- builder_.AppendCString (" null" );
470
- } else {
471
- return result;
472
- }
473
- }
474
- break ;
475
- }
476
- // TODO(yangguo): The FAST_HOLEY_* cases could be handled in a faster way.
477
- // They resemble the non-holey cases except that a prototype chain lookup
478
- // is necessary for holes.
479
- default : {
480
- Result result = SerializeJSArraySlow (object, length);
481
- if (result != SUCCESS) return result;
482
- break ;
483
- }
484
- }
437
+ Result result = SerializeJSArraySlow (object, length);
438
+ if (result != SUCCESS) return result;
485
439
builder_.AppendCharacter (' ]' );
486
440
StackPop ();
487
441
return SUCCESS;
0 commit comments