История изменений
Исправление pftBest, (текущая версия) :
отсутствия обобщенного механизма для этих вещей на уровне библиотеки/языка.
Этот «обобщенный механизм» называется futures. Два года назад когда раст зарелизился его небыло, это правда. Но сейчас он есть и уже стабилен, так что можно перестать рассказывать про «отсутствие».
код просто переусложнен
Ну и что тут переусложненого в этом асинхронном коде:
let future = future.map(move |msg| msg.extract_answer(query_type))
.then(move |rv| rv.report_status(&name, status_tx))
.then(move |rv| rv.partial_ok());
Box::new(future)
Исходная версия pftBest, :
отсутствия обобщенного механизма для этих вещей на уровне библиотеки/языка.
Еще раз повторю, этот «обобщенный механизм» называется futures. Два года назад когда раст зарелизился его небыло, это правда. Но сейчас он есть и уже стабилен, так что можно перестать рассказывать про «отсутствие».
код просто переусложнен
Ну и что тут переусложненого в этом асинхронном коде:
let future = future.map(move |msg| msg.extract_answer(query_type))
.then(move |rv| rv.report_status(&name, status_tx))
.then(move |rv| rv.partial_ok());
Box::new(future)