Re[2]: Context Receivers
От: · Великобритания  
Дата: 11.05.22 12:12
Оценка:
Здравствуйте, kov_serg, Вы писали:

_>Теперь можно писать так:

_>    with( ModuleArithmetic(13) ) {
_>        var z=a+b
_>        println("z=${z.v}")
_>    }
_>    with( SaturationArithmetic(0,10) ) {
_>        var z=a+b
_>        println("z=${z.v}")
_>    }    
_>}

Т.е. по сути синтаксический сахар для
{
  var ctx = new ModuleArithmetic(13);
  var z = ctx.plus(a, b);
  println("z=${z.v}")
}
{
  var ctx = new SaturationArithmetic(0,10);
  var z = ctx.plus(a, b);
  println("z=${z.v}")
}

И всё? Ну нафиг такое счастье. Даже по строчкам ровно столько же.

Видео не смортел. Вопрос возник — как это будет работать в случае вызовов методов внутри with? Контекст неявно передаётся? А если вызовы асинхронные, в других тредах?
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Отредактировано 11.05.2022 12:14 · . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.