15 lines
481 B
Kotlin
15 lines
481 B
Kotlin
package terminal
|
|
|
|
import terminal.ControlSequence.NullControlSequence
|
|
import terminal.SelectGraphicRendition.Companion.SGR_COMMAND
|
|
|
|
class ControlSequenceLookup {
|
|
|
|
private val commands = mapOf(SGR_COMMAND to SelectGraphicRendition.values().associateBy({ it.code }, { it }))
|
|
|
|
operator fun get(command: Char, code: String): ControlSequence {
|
|
val codes = commands.getOrDefault(command, emptyMap())
|
|
|
|
return codes.getOrDefault(code, NullControlSequence())
|
|
}
|
|
} |