Код IT Загрузка примера кода…

Kotlin main.kt
class QueryBuilder {
    private val parts = mutableListOf<String>()

    fun select(vararg fields: String) {
        parts += "SELECT " + fields.joinToString(", ")
    }

    fun from(table: String) {
        parts += "FROM $table"
    }

    fun build(): String = parts.joinToString(" ")
}

fun query(block: QueryBuilder.() -> Unit): String =
    QueryBuilder().apply(block).build()
class QueryBuilder {
    private val parts = mutableListOf<String>()

    fun select(vararg fields: String) {
        parts += "SELECT " + fields.joinToString(", ")
    }

    fun from(table: String) {
        parts += "FROM $table"
    }

    fun build(): String = parts.joinToString(" ")
}

fun query(block: QueryBuilder.() -> Unit): String =
    QueryBuilder().apply(block).build()