Похоже, вам нужна функция html
, обернутая lazy
и возвращающая Lazy<T>
:
fun html(builder: Html.() -> Unit) = lazy { createHtml().builder() }
(я не знаю тип, возвращаемый createHtml
, поэтому я предполагаю, что он называется Html
.)
Однако я не уверен, что это хороший дизайн, поскольку он теряет семантическое значение lazy
и потому, что он действительно служит только для сохранения нескольких символов, но это только мое мнение.