mirror of https://github.com/sbt/sbt.git
Improve structureIndex call by using Vector
This call takes around 8035ms for 100 subprojects. I don't think using Vector here had any noticeable effect.
This commit is contained in:
parent
3e29a48b56
commit
843f79ffd9
|
|
@ -220,10 +220,10 @@ private[sbt] object Load {
|
||||||
{
|
{
|
||||||
val keys = Index.allKeys(settings)
|
val keys = Index.allKeys(settings)
|
||||||
val attributeKeys = Index.attributeKeys(data) ++ keys.map(_.key)
|
val attributeKeys = Index.attributeKeys(data) ++ keys.map(_.key)
|
||||||
val scopedKeys = keys ++ data.allKeys((s, k) => ScopedKey(s, k))
|
val scopedKeys = keys ++ data.allKeys((s, k) => ScopedKey(s, k)).toVector
|
||||||
val projectsMap = projects.mapValues(_.defined.keySet)
|
val projectsMap = projects.mapValues(_.defined.keySet)
|
||||||
val keyIndex = KeyIndex(scopedKeys, projectsMap)
|
val keyIndex = KeyIndex(scopedKeys.toVector, projectsMap)
|
||||||
val aggIndex = KeyIndex.aggregate(scopedKeys, extra(keyIndex), projectsMap)
|
val aggIndex = KeyIndex.aggregate(scopedKeys.toVector, extra(keyIndex), projectsMap)
|
||||||
new StructureIndex(Index.stringToKeyMap(attributeKeys), Index.taskToKeyMap(data), Index.triggers(data), keyIndex, aggIndex)
|
new StructureIndex(Index.stringToKeyMap(attributeKeys), Index.taskToKeyMap(data), Index.triggers(data), keyIndex, aggIndex)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue