Skip to content

Commit

Permalink
Handle targets with both Scala and Java options
Browse files Browse the repository at this point in the history
  • Loading branch information
Arthurm1 committed Mar 10, 2021
1 parent 3cfe931 commit 74c7619
Showing 1 changed file with 4 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -127,21 +127,18 @@ final class BuildTargets(
scalaTargetRoots.iterator ++ javaTargetRoots.iterator
}

// When a target is both Scala and Java then Scala takes precedence
def allCommon: Iterator[CommonTarget] =
allScala ++ allJava
allTargets.flatMap(target =>
toScalaTarget(target).orElse(toJavaTarget(target))
)

def allScala: Iterator[ScalaTarget] =
for {
target <- allTargets
scalaTarget <- toScalaTarget(target)
} yield scalaTarget

private def allJava: Iterator[JavaTarget] =
for {
target <- allTargets
javaTarget <- toJavaTarget(target)
} yield javaTarget

def scalaTarget(id: BuildTargetIdentifier): Option[ScalaTarget] =
for {
target <- buildTargetInfo.get(id)
Expand Down

0 comments on commit 74c7619

Please sign in to comment.