mirror of
https://github.com/GayPizzaSpecifications/pork.git
synced 2025-08-02 12:50:55 +00:00
ffi: shorthand for some java types
This commit is contained in:
parent
953679b859
commit
540826fb6e
@ -2,7 +2,7 @@ func java_system_err()
|
||||
native java "java.lang.System:static-getter:err:java.io.PrintStream"
|
||||
|
||||
func print_stream_println(stream, line)
|
||||
native java "java.io.PrintStream:virtual:println:void:java.lang.String"
|
||||
native java "java.io.PrintStream:virtual:println:void:String"
|
||||
|
||||
export func main() {
|
||||
let error = java_system_err()
|
||||
|
@ -13,7 +13,7 @@ class JavaNativeProvider : NativeFunctionProvider {
|
||||
val functionDefinition = JavaFunctionDefinition.parse(definition)
|
||||
val javaClass = lookupClass(functionDefinition.type)
|
||||
val returnTypeClass = lookupClass(functionDefinition.returnType)
|
||||
val parameterClasses = functionDefinition.parameters.map { lookup.findClass(it) }
|
||||
val parameterClasses = functionDefinition.parameters.map { lookupClass(it) }
|
||||
val handle = mapKindToHandle(
|
||||
functionDefinition.kind,
|
||||
functionDefinition.symbol,
|
||||
@ -26,6 +26,12 @@ class JavaNativeProvider : NativeFunctionProvider {
|
||||
|
||||
private fun lookupClass(name: String): Class<*> = when (name) {
|
||||
"void" -> Void.TYPE
|
||||
"String" -> String::class.java
|
||||
"byte" -> Byte::class.java
|
||||
"char" -> Char::class.java
|
||||
"short" -> Short::class.java
|
||||
"int" -> Int::class.java
|
||||
"long" -> Long::class.java
|
||||
else -> lookup.findClass(name)
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user