@@ -1127,13 +1127,13 @@ struct BridgeJSLink {
11271127 }
11281128
11291129 // Generate wrapper functions for each module
1130- for (moduleName, classes) in modulesByName {
1130+ for (moduleName, classes) in modulesByName. sorted ( by : { $0 . key < $1 . key } ) {
11311131 wrapperLines. append ( " // Wrapper functions for module: \( moduleName) " )
11321132 wrapperLines. append ( " if (!importObject[ \" \( moduleName) \" ]) { " )
11331133 wrapperLines. append ( " importObject[ \" \( moduleName) \" ] = {}; " )
11341134 wrapperLines. append ( " } " )
11351135
1136- for klass in classes {
1136+ for klass in classes. sorted ( by : { $0 . name < $1 . name } ) {
11371137 let wrapperFunctionName = " bjs_ \( klass. name) _wrap "
11381138 wrapperLines. append ( " importObject[ \" \( moduleName) \" ][ \" \( wrapperFunctionName) \" ] = function(pointer) { " )
11391139 wrapperLines. append ( " const obj = \( klass. name) .__construct(pointer); " )
@@ -2639,14 +2639,14 @@ extension BridgeJSLink {
26392639 renderTSSignatureCallback: @escaping ( [ Parameter ] , BridgeType , Effects ) -> String
26402640 ) -> [ String ] {
26412641 let printer = CodeFragmentPrinter ( )
2642-
2642+
26432643 let globalSkeletons = exportedSkeletons. filter { $0. exposeToGlobal }
26442644 let nonGlobalSkeletons = exportedSkeletons. filter { !$0. exposeToGlobal }
2645-
2645+
26462646 if !globalSkeletons. isEmpty {
26472647 let globalRootNode = NamespaceNode ( name: " " )
26482648 buildExportsTree ( rootNode: globalRootNode, exportedSkeletons: globalSkeletons)
2649-
2649+
26502650 if !globalRootNode. children. isEmpty {
26512651 printer. write ( " export {}; " )
26522652 printer. nextLine ( )
@@ -2664,11 +2664,11 @@ extension BridgeJSLink {
26642664 printer. nextLine ( )
26652665 }
26662666 }
2667-
2667+
26682668 if !nonGlobalSkeletons. isEmpty {
26692669 let localRootNode = NamespaceNode ( name: " " )
26702670 buildExportsTree ( rootNode: localRootNode, exportedSkeletons: nonGlobalSkeletons)
2671-
2671+
26722672 if !localRootNode. children. isEmpty {
26732673 generateNamespaceDeclarationsForNode (
26742674 node: localRootNode,
@@ -2682,7 +2682,7 @@ extension BridgeJSLink {
26822682
26832683 return printer. lines
26842684 }
2685-
2685+
26862686 private func generateNamespaceDeclarationsForNode(
26872687 node: NamespaceNode ,
26882688 depth: Int ,
@@ -2871,13 +2871,19 @@ extension BridgeJSLink {
28712871 }
28722872 }
28732873
2874- generateNamespaceDeclarationsForNode ( node: childNode, depth: depth + 1 , printer: printer, exposeToGlobal: exposeToGlobal, renderTSSignatureCallback: renderTSSignatureCallback)
2874+ generateNamespaceDeclarationsForNode (
2875+ node: childNode,
2876+ depth: depth + 1 ,
2877+ printer: printer,
2878+ exposeToGlobal: exposeToGlobal,
2879+ renderTSSignatureCallback: renderTSSignatureCallback
2880+ )
28752881
28762882 printer. unindent ( )
28772883 printer. write ( " } " )
28782884 }
28792885 }
2880-
2886+
28812887 generateNamespaceDeclarations ( node: node, depth: depth)
28822888 }
28832889 }
0 commit comments