Eliminated some warnings in wasm32 sample.
This commit is contained in:
committed by
alexander-gorshenev
parent
103d397200
commit
95128148ba
@@ -25,7 +25,7 @@ external public fun stringLengthBytes(message: String): Int
|
|||||||
typealias KtFunction <R> = ((ArrayList<JsValue>)->R)
|
typealias KtFunction <R> = ((ArrayList<JsValue>)->R)
|
||||||
|
|
||||||
fun <R> wrapFunction(func: KtFunction<R>): Int {
|
fun <R> wrapFunction(func: KtFunction<R>): Int {
|
||||||
val ptr: Long = StableObjPtr.create(func).value.toLong()
|
val ptr: Long = StableRef.create(func).asCPointer().toLong()
|
||||||
return ptr.toInt() // TODO: LP64 unsafe.
|
return ptr.toInt() // TODO: LP64 unsafe.
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -38,7 +38,7 @@ fun runLambda(pointer: Int, argumentsArena: Arena, argumentsArenaSize: Int): Int
|
|||||||
val previousArena = ArenaManager.currentArena
|
val previousArena = ArenaManager.currentArena
|
||||||
ArenaManager.currentArena = argumentsArena
|
ArenaManager.currentArena = argumentsArena
|
||||||
// TODO: LP64 unsafe: wasm32 passes Int, not Long.
|
// TODO: LP64 unsafe: wasm32 passes Int, not Long.
|
||||||
val func = StableObjPtr.fromValue(pointer.toLong().toCPointer()!!).get() as KtFunction<JsValue>
|
val func = StableRef.fromValue(pointer.toLong().toCPointer()!!).get() as KtFunction<JsValue>
|
||||||
val result = func(arguments)
|
val result = func(arguments)
|
||||||
|
|
||||||
ArenaManager.currentArena = previousArena
|
ArenaManager.currentArena = previousArena
|
||||||
|
|||||||
@@ -14,8 +14,8 @@ fun main(args: Array<String>) {
|
|||||||
var mouseY: Int = 0
|
var mouseY: Int = 0
|
||||||
var draw: Boolean = false
|
var draw: Boolean = false
|
||||||
|
|
||||||
document.setter("onmousemove") { args: ArrayList<JsValue> ->
|
document.setter("onmousemove") { arguments: ArrayList<JsValue> ->
|
||||||
val event = MouseEvent(args[0])
|
val event = MouseEvent(arguments[0])
|
||||||
mouseX = event.getInt("clientX") - rectLeft
|
mouseX = event.getInt("clientX") - rectLeft
|
||||||
mouseY = event.getInt("clientY") - rectTop
|
mouseY = event.getInt("clientY") - rectTop
|
||||||
|
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ fun Operation.generateKotlin(parent: Interface): String {
|
|||||||
argList +
|
argList +
|
||||||
"): ${returnType.toKotlinType()} {\n" +
|
"): ${returnType.toKotlinType()} {\n" +
|
||||||
|
|
||||||
"\t\tval wasmRetVal = ${wasmFunctionName(name, parent.name)}($wasmArgList)\n" +
|
"\t\t${if (returnType != Void) "val wasmRetVal = " else ""}${wasmFunctionName(name, parent.name)}($wasmArgList)\n" +
|
||||||
|
|
||||||
"\t\treturn ${returnType.wasmReturnMapping("wasmRetVal")}\n"+
|
"\t\treturn ${returnType.wasmReturnMapping("wasmRetVal")}\n"+
|
||||||
"\t}\n"
|
"\t}\n"
|
||||||
|
|||||||
Reference in New Issue
Block a user