Code: Select all
error: cannot find symbol
import com.example.domeupdatesreplica.ui.updates.UpdatesViewModel_HiltModules_KeyModule_Provide_LazyMapKey;
^
symbol: class UpdatesViewModel_HiltModules_KeyModule_Provide_LazyMapKey
location: package com.example.domeupdatesreplica.ui.updates
Code: Select all
@HiltViewModel
class UpdatesViewModel @Inject constructor(
private val postRepository: PostRepository,
private val userRepository: UserRepository
) :
ViewModel() {
// stuff
}
Code: Select all
@Module
@InstallIn(SingletonComponent::class)
object AppModule {
@Provides
@Singleton
fun provideDatabase(@ApplicationContext context: Context): DomeDatabase {
return Room.databaseBuilder(
context = context,
name = "dome_database",
klass = DomeDatabase::class.java
)
.fallbackToDestructiveMigrationFrom()
.build()
}
@Provides
@Singleton
fun provideUserDao(database: DomeDatabase) = database.userDao()
@Provides
@Singleton
fun providePostDao(database: DomeDatabase) = database.postDao()
@Provides
@Singleton
fun provideCommentDao(database: DomeDatabase) = database.commentDao()
@Provides
@Singleton
fun provideUserRepository(userDao: UserDao) = UserRepository(userDao)
@Provides
@Singleton
fun providePostRepository(postDao: PostDao) = PostRepository(postDao)
@Provides
@Singleton
fun provideCommentRepository(commentDao: CommentDao) = CommentRepository(commentDao)
}
Code: Select all
val hiltVersion = "2.52"
implementation("com.google.dagger:hilt-android:$hiltVersion")
ksp("com.google.dagger:hilt-compiler:$hiltVersion")