aboutsummaryrefslogtreecommitdiff
path: root/libraries
diff options
context:
space:
mode:
authorChristopher Vogt <oss.nsp@cvogt.org>2017-03-27 19:15:36 -0400
committerChristopher Vogt <oss.nsp@cvogt.org>2017-04-02 03:32:03 -0400
commit52b30bcd4c1bb46879075f3a77d6eb3df3688c3a (patch)
treeaf9c68bc41e99f0bb2e44141dcdce2003d26b43c /libraries
parent2476e2ec1100813ae4e05cf2183feff8bf5ec8ea (diff)
downloadcbt-52b30bcd4c1bb46879075f3a77d6eb3df3688c3a.tar.gz
cbt-52b30bcd4c1bb46879075f3a77d6eb3df3688c3a.tar.bz2
cbt-52b30bcd4c1bb46879075f3a77d6eb3df3688c3a.zip
verify classpath feature to identify duplicate classes
Diffstat (limited to 'libraries')
-rw-r--r--libraries/file/file.scala12
1 files changed, 6 insertions, 6 deletions
diff --git a/libraries/file/file.scala b/libraries/file/file.scala
index 900e9ec..d420964 100644
--- a/libraries/file/file.scala
+++ b/libraries/file/file.scala
@@ -79,14 +79,14 @@ trait Module {
case v @ ( file, _ ) if collector.isDefinedAt( v ) => file -> collector( v )
}
if ( !allowDuplicates ) {
- val relatives = map.unzip._2
- val duplicateFiles = ( relatives diff relatives.distinct ).distinct
+ val duplicates = map.groupBy( _._2 ).filter( _._2.size > 1 ).mapValues( _.map( _._1 ).toSeq.sorted ).toSeq.sortBy( _._1 )
assert(
- duplicateFiles.isEmpty, {
- val rs = relatives.toSet
+ duplicates.isEmpty,
+ {
"Conflicting:\n\n" +
- map.filter( rs contains _._2 ).groupBy( _._2 ).mapValues( _.map( _._1 ).sorted ).toSeq.sortBy( _._1 ).map {
- case ( name, files ) => s"$name:\n" ++ files.mkString( "\n" )
+ duplicates.map {
+ case ( path, locations ) =>
+ path + " in:\n" + locations.mkString( "\n" )
}.mkString( "\n\n" )
}
)