Skip to content

Commit ceb0e54

Browse files
committed
Handle imports when checking required base package - simplify code
1 parent 1c2d0aa commit ceb0e54

File tree

1 file changed

+5
-9
lines changed

1 file changed

+5
-9
lines changed

commons-analyzer/src/main/scala/com/avsystem/commons/analyzer/BasePackage.scala

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,10 @@ class BasePackage(g: Global) extends AnalyzerRule(g, "basePackage") {
88

99
import global._
1010

11-
object ImportsOnlyOrEmptyList {
12-
@tailrec def unapply(stats: List[Tree]): Option[Tree] = stats match {
13-
case Nil => None
14-
case List(stat) => Some(stat)
15-
case head :: next => head match {
16-
case Import(_, _) => unapply(next)
17-
case _ => None
18-
}
11+
object SkipImports {
12+
@tailrec def unapply(stats: List[Tree]): Some[List[Tree]] = stats match {
13+
case Import(_, _) :: tail => unapply(tail)
14+
case stats => Some(stats)
1915
}
2016
}
2117

@@ -24,7 +20,7 @@ class BasePackage(g: Global) extends AnalyzerRule(g, "basePackage") {
2420

2521
@tailrec def validate(tree: Tree): Unit = tree match {
2622
case PackageDef(pid, _) if pid.symbol.hasPackageFlag && pid.symbol.fullName == requiredBasePackage =>
27-
case PackageDef(_, ImportsOnlyOrEmptyList(stat)) => validate(stat)
23+
case PackageDef(_, SkipImports(List(stat))) => validate(stat)
2824
case t => report(t.pos, s"`$requiredBasePackage` must be one of the base packages in this file")
2925
}
3026

0 commit comments

Comments
 (0)