@@ -69,6 +69,33 @@ function tryImplForWrapper(wrapper) {
6969const iterInternalSymbol = Symbol ( "internal" ) ;
7070const IteratorPrototype = Object . getPrototypeOf ( Object . getPrototypeOf ( [ ] [ Symbol . iterator ] ( ) ) ) ;
7171
72+ function isArrayIndexPropName ( P ) {
73+ if ( typeof P !== "string" ) {
74+ return false ;
75+ }
76+ const i = P >>> 0 ;
77+ if ( i === Math . pow ( 2 , 32 ) - 1 ) {
78+ return false ;
79+ }
80+ const s = `${ i } ` ;
81+ if ( P !== s ) {
82+ return false ;
83+ }
84+ return true ;
85+ }
86+
87+ const supportsPropertyIndex = Symbol ( "supports property index" ) ;
88+ const supportedPropertyIndices = Symbol ( "supported property indices" ) ;
89+ const supportsPropertyName = Symbol ( "supports property name" ) ;
90+ const supportedPropertyNames = Symbol ( "supported property names" ) ;
91+ const indexedGet = Symbol ( "indexed property get" ) ;
92+ const indexedSetNew = Symbol ( "indexed property set new" ) ;
93+ const indexedSetExisting = Symbol ( "indexed property set existing" ) ;
94+ const namedGet = Symbol ( "named property get" ) ;
95+ const namedSetNew = Symbol ( "named property set new" ) ;
96+ const namedSetExisting = Symbol ( "named property set existing" ) ;
97+ const namedDelete = Symbol ( "named property delete" ) ;
98+
7299module . exports = exports = {
73100 isObject,
74101 getReferenceToBytes,
@@ -82,5 +109,17 @@ module.exports = exports = {
82109 tryWrapperForImpl,
83110 tryImplForWrapper,
84111 iterInternalSymbol,
85- IteratorPrototype
112+ IteratorPrototype,
113+ isArrayIndexPropName,
114+ supportsPropertyIndex,
115+ supportedPropertyIndices,
116+ supportsPropertyName,
117+ supportedPropertyNames,
118+ indexedGet,
119+ indexedSetNew,
120+ indexedSetExisting,
121+ namedGet,
122+ namedSetNew,
123+ namedSetExisting,
124+ namedDelete
86125} ;
0 commit comments