Skip to content

Instantly share code, notes, and snippets.

@Runman44
Created November 6, 2018 11:24
Show Gist options
  • Save Runman44/f4abb5952af5a0ed76afbf08bde02d60 to your computer and use it in GitHub Desktop.
Save Runman44/f4abb5952af5a0ed76afbf08bde02d60 to your computer and use it in GitHub Desktop.
sealed class ScreenState3 {
object LoadingState : ScreenState3()
class ErrorState(val error: Throwable) : ScreenState3()
class SuccessState(val data: String) : ScreenState3()
}
fun main(args: Array<String>) {
val response3: ScreenState3 = ScreenState3.SuccessState("yay")
when (response3) {
is ScreenState3.SuccessState -> doStuff(response3.data)
is ScreenState3.LoadingState -> { }
is ScreenState3.ErrorState -> { }
}
}
fun doStuff(data: String) {
//NO-OP
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment