Как я могу использовать FnMut с параметрами c в Rust? - PullRequest
0 голосов
/ 04 апреля 2020

Я пытаюсь определить сигнатуру FnMut, чтобы позволить пользователям библиотеки передавать замыкание в качестве обратного вызова. Закрытие будет упаковано и сохранено в структуре.

Обратному вызову будут заданы определенные входные параметры, и он должен возвращать структуру, которая реализует черту.

В настоящее время подпись определяется как:

    new_request_session_callback: Option<
        Box<
            dyn FnMut(
                    my::Parameters
                ) -> OutputSessionStruct
                + 'static,
        >,

Я хотел бы изменить эту подпись, чтобы она принимала любую выходную структуру, которая реализует определенный SessionTrait. Как я могу это сделать?

...