package dev.inmo.micro_utils.matrix class MatrixBuilder { private val mutMatrix: MutableList> = ArrayList() val matrix: Matrix get() = mutMatrix fun row(t: List) = mutMatrix.add(t) operator fun List.unaryPlus() = row(this) } fun MatrixBuilder.row(block: RowBuilder.() -> Unit) = +RowBuilder().also(block).row fun MatrixBuilder.row(vararg elements: T) = +elements.toList()