@@ -897,20 +897,20 @@ var LibraryEmbind = {
897897 var rawDestructor = reg . rawDestructor ;
898898
899899 whenDependentTypesAreResolved ( [ rawTupleType ] , elementTypes , ( elementTypes ) => {
900- elements . forEach ( ( elt , i ) => {
901- var getterReturnType = elementTypes [ i ] ;
902- var getter = elt . getter ;
903- var getterContext = elt . getterContext ;
904- var setterArgumentType = elementTypes [ i + elementsLength ] ;
905- var setter = elt . setter ;
906- var setterContext = elt . setterContext ;
900+ for ( const [ i , elt ] of elements . entries ( ) ) {
901+ const getterReturnType = elementTypes [ i ] ;
902+ const getter = elt . getter ;
903+ const getterContext = elt . getterContext ;
904+ const setterArgumentType = elementTypes [ i + elementsLength ] ;
905+ const setter = elt . setter ;
906+ const setterContext = elt . setterContext ;
907907 elt . read = ( ptr ) => getterReturnType . fromWireType ( getter ( getterContext , ptr ) ) ;
908908 elt . write = ( ptr , o ) => {
909909 var destructors = [ ] ;
910910 setter ( setterContext , ptr , setterArgumentType . toWireType ( destructors , o ) ) ;
911911 runDestructors ( destructors ) ;
912912 } ;
913- } ) ;
913+ }
914914
915915 return [ {
916916 name : reg . name ,
@@ -998,25 +998,23 @@ var LibraryEmbind = {
998998 concat ( fieldRecords . map ( ( field ) => field . setterArgumentType ) ) ;
999999 whenDependentTypesAreResolved ( [ structType ] , fieldTypes , ( fieldTypes ) => {
10001000 var fields = { } ;
1001- fieldRecords . forEach ( ( field , i ) => {
1002- var fieldName = field . fieldName ;
1003- var getterReturnType = fieldTypes [ i ] ;
1004- var optional = fieldTypes [ i ] . optional ;
1005- var getter = field . getter ;
1006- var getterContext = field . getterContext ;
1007- var setterArgumentType = fieldTypes [ i + fieldRecords . length ] ;
1008- var setter = field . setter ;
1009- var setterContext = field . setterContext ;
1010- fields [ fieldName ] = {
1001+ for ( var [ i , field ] of fieldRecords . entries ( ) ) {
1002+ const getterReturnType = fieldTypes [ i ] ;
1003+ const getter = field . getter ;
1004+ const getterContext = field . getterContext ;
1005+ const setterArgumentType = fieldTypes [ i + fieldRecords . length ] ;
1006+ const setter = field . setter ;
1007+ const setterContext = field . setterContext ;
1008+ fields [ field . fieldName ] = {
10111009 read : ( ptr ) => getterReturnType . fromWireType ( getter ( getterContext , ptr ) ) ,
10121010 write : ( ptr , o ) => {
10131011 var destructors = [ ] ;
10141012 setter ( setterContext , ptr , setterArgumentType . toWireType ( destructors , o ) ) ;
10151013 runDestructors ( destructors ) ;
10161014 } ,
1017- optional,
1015+ optional : getterReturnType . optional ,
10181016 } ;
1019- } ) ;
1017+ }
10201018
10211019 return [ {
10221020 name : reg . name ,
@@ -2101,11 +2099,11 @@ var LibraryEmbind = {
21012099 var baseClassPrototype = baseClass . instancePrototype ;
21022100 var baseConstructor = registeredClass . baseClass . constructor ;
21032101 var ctor = createNamedFunction ( constructorName , function ( ...args ) {
2104- registeredClass . baseClass . pureVirtualFunctions . forEach ( function ( name ) {
2102+ for ( var name of registeredClass . baseClass . pureVirtualFunctions ) {
21052103 if ( this [ name ] === baseClassPrototype [ name ] ) {
21062104 throw new PureVirtualError ( `Pure virtual function ${ name } must be implemented in JavaScript` ) ;
21072105 }
2108- } . bind ( this ) ) ;
2106+ }
21092107
21102108 Object . defineProperty ( this , '__parent' , {
21112109 value : wrapperPrototype
0 commit comments