Что означает @ в утверждении о совпадении?

Я начал изучать роторную библиотеку и нашел выражение:

me @ Echo::Server(..) => me.accept(),

Что это значит и как я могу использовать @ оператор? Я предполагаю, что это что-то вроде операции приведения, но в разделе книги о Rust, касающемся приведения, не упоминается об этом.

1 ответ

Решение

Вы можете использовать индекс синтаксиса в Rust Book для поиска битов синтаксиса. В данном случае это привязка к шаблону, используемая для привязки определенной части шаблона к переменной.

Здесь он используется для привязки всего значения к me если и только если это Echo::Server вариант.

Другие вопросы по тегам