sealed class ViewState { | |
object Loading: ViewState() | |
class Success(val someData: String): ViewState() | |
class Failure(val message: String): ViewState() | |
} | |
fun main() { | |
val message = when (getViewState()) { | |
is ViewState.Loading -> "Data is loading" | |
is ViewState.Success -> "Got data: ${state.someData}" | |
is ViewState.Failure -> "It failed! ${state.message}" | |
} | |
println(message) | |
} | |
fun getViewState(): ViewState = listOf(ViewState.Loading, ViewState.Success("MyData"), ViewState.Failure("Error")).random() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment