Kotlin/Native 0.5 支持在Swift, C和LLVM 5中使用 Kotlin

栏目: 软件资讯 · 发布时间: 7年前

内容简介:Kotlin/Native 圣诞节特别版 —— Kotlin/Native v0.5 已正式发布。该版本的亮点较多,Kotlin/Native v0.5 增加了对在 C, Objective-C APIs 和 Swift 中使用 Kotlin 代码的支持,支持使用 iOS 模拟器的开发,还支...

Kotlin/Native 圣诞节特别版 —— Kotlin/Native v0.5 已正式发布。该版本的亮点较多,Kotlin/Native v0.5 增加了对在 C, Objective-C APIs 和 Swift 中使用 Kotlin 代码的支持,支持使用 iOS 模拟器的开发,还支持 LLVM 5,还能从 Linux 和 Windows 主机创建 WebAssembly。

添加从 Swift 和 Objective-C 中调用 Kotlin 代码的支持

例如下面这行 Swift 代码

private let parser = KAPPartialParser(composer: KAPCalculator(), partialComposer: PartialRenderer())

创建 Kotlin 类 PartialParser 的实例,并为其提供实现 Kotlin 接口 ExpressionComposer 的 Swift 类 PartialRenderer 的实例。

构建项目

Kotlin/Native 0.5 支持在Swift, C和LLVM 5中使用 Kotlin

IntelliJ IDEA 中的 Kotlin 代码:

Kotlin/Native 0.5 支持在Swift, C和LLVM 5中使用 Kotlin

Kotlin 与 C 语言的互操作性

if (PyArg_ParseTuple(args, "Lss", &session_arg, &string_arg1, &string_arg2)) {
       T_(Server) server = getServer();
       T_(Session) session = { (void*)(uintptr_t)session_arg };
       const char* string = __ kotlin.demo.Server.concat(server, session, string_arg1, string_arg2);
       result = Py_BuildValue("s", string);
       __ DisposeString(string);
    } else {
        result = Py_BuildValue("s", NULL);
    }

Kotlin/Native 编译器生成一个动态库,然后 Python distutils 构建 工具 生成另一个动态库。因此,Python 启动器代码通过 C 语言桥接调用 Kotlin/Native 对象,并正确转换对象和原始类型。

其他改进

  • 在Kotlin 1.2中,kotlin.math软件包被添加到 Kotlin 标准库中。该版本已支持kotlin.math包中的操作

  • 支持LLVM 5.0.0,clang工具链和bitcode 代码生成器和优化器也支持

  • 现在可以从Linux和Windows主机生成WebAssembly(-target wasm32)的代码

  • 改进Workers API

  • 漏洞修复和改进

详细更新说明和下载地址:https://blog.jetbrains.com/


【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

The Sovereign Individual

The Sovereign Individual

James Dale Davidson、William Rees-Mogg / Free Press / 1999-08-26 / USD 16.00

Two renowned investment advisors and authors of the bestseller The Great Reckoning bring to light both currents of disaster and the potential for prosperity and renewal in the face of radical changes ......一起来看看 《The Sovereign Individual》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具