``` enum class Event(val displayName: String) { ...
# getting-started
o
Copy code
enum class Event(val displayName: String) {
    IMPRESSION("impression"),
    CLICK_THROUGH("clickThrough");

    companion object {
        private val nameToEnum by lazy { values().associateBy { it.displayName } }

        fun fromName(name: String): Event {
            return nameToEnum[name] ?: throw IllegalArgumentException("Enum value $name was not found")
        }
    }
}
Good enough?