@@ -41,6 +41,7 @@ export async function createInstantiator(options, swift) {
4141 addImports : ( importObject , importsContext ) => {
4242 bjs = { } ;
4343 importObject [ "bjs" ] = bjs ;
44+ const imports = options . getImports ( importsContext ) ;
4445 bjs [ "swift_js_return_string" ] = function ( ptr , len ) {
4546 const bytes = new Uint8Array ( memory . buffer , ptr , len ) ;
4647 tmpRetString = textDecoder . decode ( bytes ) ;
@@ -190,6 +191,72 @@ export async function createInstantiator(options, swift) {
190191 tmpRetOptionalHeapObject = undefined ;
191192 return pointer || 0 ;
192193 }
194+ const TestModule = importObject [ "TestModule" ] = importObject [ "TestModule" ] || { } ;
195+ TestModule [ "bjs_asyncReturnVoid" ] = function bjs_asyncReturnVoid ( ) {
196+ try {
197+ let ret = imports . asyncReturnVoid ( ) ;
198+ return swift . memory . retain ( ret ) ;
199+ } catch ( error ) {
200+ setException ( error ) ;
201+ return 0
202+ }
203+ }
204+ TestModule [ "bjs_asyncRoundTripInt" ] = function bjs_asyncRoundTripInt ( v ) {
205+ try {
206+ let ret = imports . asyncRoundTripInt ( v ) ;
207+ return swift . memory . retain ( ret ) ;
208+ } catch ( error ) {
209+ setException ( error ) ;
210+ return 0
211+ }
212+ }
213+ TestModule [ "bjs_asyncRoundTripString" ] = function bjs_asyncRoundTripString ( v ) {
214+ try {
215+ const vObject = swift . memory . getObject ( v ) ;
216+ swift . memory . release ( v ) ;
217+ let ret = imports . asyncRoundTripString ( vObject ) ;
218+ return swift . memory . retain ( ret ) ;
219+ } catch ( error ) {
220+ setException ( error ) ;
221+ return 0
222+ }
223+ }
224+ TestModule [ "bjs_asyncRoundTripBool" ] = function bjs_asyncRoundTripBool ( v ) {
225+ try {
226+ let ret = imports . asyncRoundTripBool ( v !== 0 ) ;
227+ return swift . memory . retain ( ret ) ;
228+ } catch ( error ) {
229+ setException ( error ) ;
230+ return 0
231+ }
232+ }
233+ TestModule [ "bjs_asyncRoundTripFloat" ] = function bjs_asyncRoundTripFloat ( v ) {
234+ try {
235+ let ret = imports . asyncRoundTripFloat ( v ) ;
236+ return swift . memory . retain ( ret ) ;
237+ } catch ( error ) {
238+ setException ( error ) ;
239+ return 0
240+ }
241+ }
242+ TestModule [ "bjs_asyncRoundTripDouble" ] = function bjs_asyncRoundTripDouble ( v ) {
243+ try {
244+ let ret = imports . asyncRoundTripDouble ( v ) ;
245+ return swift . memory . retain ( ret ) ;
246+ } catch ( error ) {
247+ setException ( error ) ;
248+ return 0
249+ }
250+ }
251+ TestModule [ "bjs_asyncRoundTripJSObject" ] = function bjs_asyncRoundTripJSObject ( v ) {
252+ try {
253+ let ret = imports . asyncRoundTripJSObject ( swift . memory . getObject ( v ) ) ;
254+ return swift . memory . retain ( ret ) ;
255+ } catch ( error ) {
256+ setException ( error ) ;
257+ return 0
258+ }
259+ }
193260 } ,
194261 setInstance : ( i ) => {
195262 instance = i ;
0 commit comments