You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
valapiHash:HashAPI.Hash=HashAPI(classApi)
valnameHashes= (new xsbt.api.NameHashing(options.useOptimizedSealed())).nameHashes(classApi)
classApi.definitionType match {
case d @ (DefinitionType.ClassDef|DefinitionType.Trait) =>valextraApiHash= {
if (d !=DefinitionType.Trait) apiHash
elseHashAPI(_.hashAPI(classApi), includePrivateDefsInTrait =true)
}
classApis(className) =ApiInfo(apiHash, extraApiHash, savedClassApi)
classPublicNameHashes(className) = nameHashes.toArray
caseDefinitionType.Module|DefinitionType.PackageModule=>
objectApis(className) =ApiInfo(apiHash, apiHash, savedClassApi)
objectPublicNameHashes(className) = nameHashes.toArray
Now that name hashing is aways enabled, could we just redefine apiHash as f(nameHashes)? This would save about 10% of of the work in extract-api phase.
The text was updated successfully, but these errors were encountered:
Another implementation strategy would be to change hashDefinition to cache its result on the Definition that it hashes, so the subesquent call will avoid the work.
Now that name hashing is aways enabled, could we just redefine
apiHash
asf(nameHashes)
? This would save about 10% of of the work in extract-api phase.The text was updated successfully, but these errors were encountered: