mirror of
				https://github.com/GayPizzaSpecifications/pork.git
				synced 2025-11-03 17:39:38 +00:00 
			
		
		
		
	ffi: shorthand for some java types
This commit is contained in:
		@ -2,7 +2,7 @@ func java_system_err()
 | 
				
			|||||||
  native java "java.lang.System:static-getter:err:java.io.PrintStream"
 | 
					  native java "java.lang.System:static-getter:err:java.io.PrintStream"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func print_stream_println(stream, line)
 | 
					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() {
 | 
					export func main() {
 | 
				
			||||||
  let error = java_system_err()
 | 
					  let error = java_system_err()
 | 
				
			||||||
 | 
				
			|||||||
@ -13,7 +13,7 @@ class JavaNativeProvider : NativeFunctionProvider {
 | 
				
			|||||||
    val functionDefinition = JavaFunctionDefinition.parse(definition)
 | 
					    val functionDefinition = JavaFunctionDefinition.parse(definition)
 | 
				
			||||||
    val javaClass = lookupClass(functionDefinition.type)
 | 
					    val javaClass = lookupClass(functionDefinition.type)
 | 
				
			||||||
    val returnTypeClass = lookupClass(functionDefinition.returnType)
 | 
					    val returnTypeClass = lookupClass(functionDefinition.returnType)
 | 
				
			||||||
    val parameterClasses = functionDefinition.parameters.map { lookup.findClass(it) }
 | 
					    val parameterClasses = functionDefinition.parameters.map { lookupClass(it) }
 | 
				
			||||||
    val handle = mapKindToHandle(
 | 
					    val handle = mapKindToHandle(
 | 
				
			||||||
      functionDefinition.kind,
 | 
					      functionDefinition.kind,
 | 
				
			||||||
      functionDefinition.symbol,
 | 
					      functionDefinition.symbol,
 | 
				
			||||||
@ -26,6 +26,12 @@ class JavaNativeProvider : NativeFunctionProvider {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  private fun lookupClass(name: String): Class<*> = when (name) {
 | 
					  private fun lookupClass(name: String): Class<*> = when (name) {
 | 
				
			||||||
    "void" -> Void.TYPE
 | 
					    "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)
 | 
					    else -> lookup.findClass(name)
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user