Kotlin fake properties and their usage I had an idea recently of simplifying some of the code I already have in my Android app that uses Kotlin. I somewhat new to Kotlin, so any opinion would be very appreciated.
Before giving you what idea I had, I will give a base example of what code I have right now:
Lets say that in my app I have a functionality for user to log in and save his credentials for automatic future logging in. Here it is in code.
object MyRepository {
 // Plenty of irrelevant code here...
 fun getUserInfo(): User? {
  // Here we fetch the local data storage and check if any credentials are saved
  return userInfoDao.getUserInformation()
 }

 fun setUserInfo(user: User) {
  // Here we save user credentials to local data storage for future uses
  userInfoDao.saveUserInformation(user)
 }
}

This lead me to think that something like this could be done in a simpler manner, and here is the example:
object MyRepository {
 var userInfo: User?
   get() = userInfoDao.getUserInformation()
   set(value) = userInfoDao.saveUserInformation(value)
 }
}

This of course is much simpler version of what was written above. However, what I am curious is how good of a practice this is in terms of Kotlin standards and general code readability?
Generally speaking, I would not expect a database call to be made simply by referring to a property, such as with val user = MyRepository.userInfo. If a database call is being made, it's better to have a function for it.
I'd even argue that it would even be better to name the function fetchUserInformation than getUserInformation to be clear that this is not just a simple getter.