intellij-idea - IntelliJ/Kotlin : What does the `^use` hint mean?

标签 intellij-idea kotlin

我在 IntelliJ 中使用 Kotlin。我编写了一个相当典型的递归函数,其中包含几个流来压缩一些文件。我看到一个 ^use 并且我不知道 IntelliJ 试图告诉我什么。 (将鼠标悬停在这些东西上通常会教我一些我不知道的语言或警告我常见的错误,但这没有提供任何细节)

这是我的函数的屏幕截图,带有指向提示的箭头。

The hint <code>^use</code> in front of a call to the file input stream copyTo extension function

最佳答案

此提示标记作为 lambda 的返回值的表达式,还说明 lambda 传递给哪个函数。它读作“从传递给 use { ... } 的 lambda 返回”。

作为 last expression in each lambda is the return value ,这个提示有助于找出表达式实际上是从哪个 lambda 表达式返回的。

您可以在 IDE 首选项中禁用这些提示:编辑器常规外观显示参数提示 - 配置 em> → Language: KotlinShow lambda return expression hints(也可以从提示的右键菜单中获得),其他种类的内联提示也在那里设置。

UPD:在 IntelliJ IDEA 2019.3 及更高版本中,这些选项位于 EditorInlay HintsKotlin.

关于intellij-idea - IntelliJ/Kotlin : What does the `^use` hint mean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54599302/

相关文章:

java - 如何从当前时间的开放时间开始/关闭

xml - 尝试在 PhpStorm 的 Twig 模板中启用 XML 语言

java - 实现一个 kotlin 泛型函数,从复杂的 java 对象中检索特定字段

java - Gradle 可以在没有 main() 的情况下执行 TornadoFX 应用程序,而 IntelliJ 不能......为什么?

maven - 即使添加依赖项后,Intellij IDEA jSTL 和 taglib 也无法识别

kotlin - 用协变类型的 lambda 替换 SAM 构造函数

kotlin - Kotlin父逻辑要在子构造函数之后运行

intellij-idea - IntelliJ 上 SonarLint v2.0 的连接模式不起作用?

java - Android Studio 1.2.2静态导入完成

java - 我可以在 IntelliJ 中使用 webjar 而无需构建项目吗?