Skip to content

Instantly share code, notes, and snippets.

@maxost
Last active November 2, 2022 10:37

Revisions

  1. maxost revised this gist Sep 5, 2017. No changes.
  2. maxost created this gist Sep 5, 2017.
    11 changes: 11 additions & 0 deletions EnumExt.kt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,11 @@
    inline fun <reified T : Enum<T>> enumContains(name: String): Boolean {
    return enumValues<T>().any { it.name == name}
    }

    inline fun <reified T : Enum<T>> enumValueOf(name: String, defaultValue: T): T {
    return try {
    enumValues<T>().first { it.name == name }
    } catch (e: NoSuchElementException) {
    defaultValue
    }
    }