All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.smileys_emotion.monkey_face._allMonkeyFace.kt Maven / Gradle / Ivy

package org.kodein.emoji.smileys_emotion.monkey_face

import org.kodein.emoji.Emoji
import org.kodein.emoji.EmojiFinder
import org.kodein.emoji.addSt1Variations
import org.kodein.emoji.addSt2Variations


internal fun EmojiFinder.addAllMonkeyFace() {
    add(intArrayOf(0x1f648), _SeeNoEvilMonkey)
    add(intArrayOf(0x1f649), _HearNoEvilMonkey)
    add(intArrayOf(0x1f64a), _SpeakNoEvilMonkey)
}

internal suspend fun SequenceScope.yieldAllMonkeyFace() {
    yield(_SeeNoEvilMonkey)
    yield(_HearNoEvilMonkey)
    yield(_SpeakNoEvilMonkey)
}

internal val countMonkeyFace = 3

/**
 * All Emoji of the Smileys & Emotion: monkey-face subgroup.
*/
public fun Emoji.Companion.sequenceMonkeyFace(): Sequence =
    sequence { yieldAllMonkeyFace() }

/**
 * All Emoji of the Smileys & Emotion: monkey-face subgroup.
 *
 * WARNING: This can be quite heavy to construct.
 * This method should be called in background and its result should be cached.
*/
public fun Emoji.Companion.listMonkeyFace(): List =
    ArrayList(countMonkeyFace).also { list -> sequenceMonkeyFace().forEach { list.add(it) } }

@Deprecated("Renamed listMonkeyFace.", replaceWith = ReplaceWith("listMonkeyFace()"), level = DeprecationLevel.WARNING)
public fun Emoji.Companion.allMonkeyFace(): List =
    listMonkeyFace()




© 2015 - 2025 Weber Informatics LLC | Privacy Policy