// Generated by Brevity. Do not edit. package wit.wasmo.testing import com.dylibso.chicory.runtime.ExportFunction import com.dylibso.chicory.runtime.Instance import com.dylibso.chicory.runtime.Store import dev.wasmo.brevity.World import kotlin.Long import kotlin.Unit public fun WasmoTesting.World(hostFactory: (WasmoTesting.Guest) -> Unit): World { val guest = WasmoTestingWorld.Guest() val host = hostFactory(guest) return WasmoTestingWorld(host, guest) } private class WasmoTestingWorld( override val host: Unit, override val guest: Guest, ) : World { override fun initExports(instance: Instance) { guest.calculator.multiply = instance.export("wasmo:testing/calculator#multiply") guest.sum = instance.export("wasmo:testing/wasmo-testing#sum") } override fun initImports(store: Store) { } public class Calculator : wit.wasmo.testing.Calculator { public lateinit var multiply: ExportFunction override fun multiply(a: Long, b: Long): Long = multiply.apply(a, b)[0] } public class Guest : WasmoTesting.Guest { override val calculator: Calculator = Calculator() public lateinit var sum: ExportFunction override fun sum(a: Long, b: Long): Long = sum.apply(a, b)[0] } }