2
2
3
3
const {
4
4
ArrayIsArray,
5
+ ArrayPrototypeFilter,
6
+ ArrayPrototypeIncludes,
7
+ ArrayPrototypeMap,
8
+ ArrayPrototypePush,
9
+ ArrayPrototypeSplice,
10
+ ArrayPrototypeUnshift,
5
11
Boolean,
6
12
NumberIsSafeInteger,
7
13
ObjectDefineProperties,
8
14
ObjectDefineProperty,
9
15
ObjectKeys,
10
- Set ,
16
+ SafeSet ,
11
17
Symbol,
12
18
} = primordials ;
13
19
@@ -383,7 +389,9 @@ class PerformanceObserver extends AsyncResource {
383
389
if ( ! ArrayIsArray ( entryTypes ) ) {
384
390
throw new ERR_INVALID_OPT_VALUE ( 'entryTypes' , entryTypes ) ;
385
391
}
386
- const filteredEntryTypes = entryTypes . filter ( filterTypes ) . map ( mapTypes ) ;
392
+ const filteredEntryTypes =
393
+ ArrayPrototypeMap ( ArrayPrototypeFilter ( entryTypes , filterTypes ) ,
394
+ mapTypes ) ;
387
395
if ( filteredEntryTypes . length === 0 ) {
388
396
throw new ERR_VALID_PERFORMANCE_ENTRY_TYPE ( ) ;
389
397
}
@@ -410,7 +418,7 @@ class PerformanceObserver extends AsyncResource {
410
418
class Performance {
411
419
constructor ( ) {
412
420
this [ kIndex ] = {
413
- [ kMarks ] : new Set ( )
421
+ [ kMarks ] : new SafeSet ( )
414
422
} ;
415
423
}
416
424
@@ -577,7 +585,7 @@ function observersCallback(entry) {
577
585
setupObservers ( observersCallback ) ;
578
586
579
587
function filterTypes ( i ) {
580
- return observerableTypes . indexOf ( `${ i } ` ) >= 0 ;
588
+ return ArrayPrototypeIncludes ( observerableTypes , `${ i } ` ) ;
581
589
}
582
590
583
591
function mapTypes ( i ) {
@@ -615,15 +623,15 @@ function sortedInsert(list, entry) {
615
623
const entryStartTime = entry . startTime ;
616
624
if ( list . length === 0 ||
617
625
( list [ list . length - 1 ] . startTime < entryStartTime ) ) {
618
- list . push ( entry ) ;
626
+ ArrayPrototypePush ( list , entry ) ;
619
627
return ;
620
628
}
621
629
if ( list [ 0 ] && ( list [ 0 ] . startTime > entryStartTime ) ) {
622
- list . unshift ( entry ) ;
630
+ ArrayPrototypeUnshift ( list , entry ) ;
623
631
return ;
624
632
}
625
633
const location = getInsertLocation ( list , entryStartTime ) ;
626
- list . splice ( location , 0 , entry ) ;
634
+ ArrayPrototypeSplice ( list , location , 0 , entry ) ;
627
635
}
628
636
629
637
class ELDHistogram extends Histogram {
0 commit comments