Equals and hashCode() methods are not created for data classes without properties

This commit is contained in:
Nikolay Krasko
2015-01-12 20:07:57 +03:00
parent 86d5bd9365
commit d4507226a1
@@ -107,28 +107,25 @@ private fun ModuleSourceInfo.isTests() = this is ModuleTestSourceInfo
public fun Module.productionSourceInfo(): ModuleProductionSourceInfo = ModuleProductionSourceInfo(this)
public fun Module.testSourceInfo(): ModuleTestSourceInfo = ModuleTestSourceInfo(this)
private abstract class ModuleSourceScope(val module: Module) : GlobalSearchScope(module.getProject()) {
private abstract data class ModuleSourceScope(val module: Module) : GlobalSearchScope(module.getProject()) {
override fun compare(file1: VirtualFile, file2: VirtualFile) = 0
override fun isSearchInModuleContent(aModule: Module) = aModule == module
override fun isSearchInLibraries() = false
// KT-6206
override fun hashCode(): Int = module.hashCode()
}
private data class ModuleProductionSourceScope(module: Module) : ModuleSourceScope(module) {
private class ModuleProductionSourceScope(module: Module) : ModuleSourceScope(module) {
val moduleFileIndex = ModuleRootManager.getInstance(module).getFileIndex()
override fun contains(file: VirtualFile) = moduleFileIndex.isInSourceContent(file) && !moduleFileIndex.isInTestSourceContent(file)
// KT-6206
override fun hashCode(): Int = module.hashCode()
}
private data class ModuleTestSourceScope(module: Module) : ModuleSourceScope(module) {
private class ModuleTestSourceScope(module: Module) : ModuleSourceScope(module) {
val moduleFileIndex = ModuleRootManager.getInstance(module).getFileIndex()
override fun contains(file: VirtualFile) = moduleFileIndex.isInTestSourceContent(file)
// KT-6206
override fun hashCode(): Int = module.hashCode()
}
public data class LibraryInfo(val project: Project, val library: Library) : IdeaModuleInfo() {