是否可以生成具有internal
可见性的c刺?
与Kotlin / Native一起使用c互操作时,为c函数和结构生成的刺刺是public
可见的。据我了解,这意味着如果有人将此Kotlin代码用作库,则生成的刺伤也将在目标项目中可见。这个事实使得很难在c库上创建Kotlin包装器。
抱歉,目前不支持此行为。
首先,由于cinterop工具将绑定作为.klib
文件生成,因此它将与单独的模块关联。因此,如果您以某种方式将其标记为,将无济于事internal
。
在.klib
与绑定只是另一个源设置的项目。然后,应该可以使用它来连接各种依赖关系。现在由于某些语言限制,一个人不能使用implementation
依赖类型来连接Kotlin / Native库,只能使用api
一个。但是它可能有一天会变得可用。
就目前而言,我推荐的最佳选择是将包装命名为内部包装或其他名称,以使消费者了解其实用性。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句