一次从多个对象导入声明

问题描述 投票:0回答:1

我有多个包含case class声明的对象。例如:

object model1{
   //case classes
}

object model2{
   //case classes
}

object model3{
   //case classses
}

分别导入每个model很麻烦。是否可以一次将其导入?

以下无效工作

object all{
    import model1._
    import model2._
    import model3._
}

import all._

也许某些宏在这里有用吗?

scala class object import
1个回答
0
投票

从理论上讲,您可以查看每个对象中的所有定义,并生成代码,这些代码基本上将implicitvaldeftype委派给原始对象中的定义,但这将是:

  1. 慢,因为宏,
  2. IDE不支持,因为有宏。

如果您使用的是Scala 2.13,可以尝试使用-Yimports之类的东西来配置全局导入,如果您经常使用导入-最新的-Yimports应该支持它。

在Scala 3上,您将得到[Luis MiguelMejíaSuárez提到的IntelliJ

© www.soinside.com 2019 - 2024. All rights reserved.