Каковы возможные операторы для черт в предложении where в Rust?

Я изучаю Rust и попал в главу о границах черт. В этой главе они приводят пример с + (плюс) оператор, чтобы перечислить все необходимые черты в where пункт.

Какие еще операторы разрешены по чертам в Rust? Я искал, но я не смог найти никакой документации по этому поводу. Поддерживает ли Rust 'или' нотацию, скобки, отрицание?

1 ответ

Решение

или обозначение

Нет. Такая вещь не имеет смысла для меня - что будет делать код, если что-то может быть A ИЛИ ЖЕ B?

скобки

Нет, если не считать скобки в Fn(...) и друзья, использование угловых скобок в качестве дженериков (Vec<T>) или использование квадратных скобок в срезах ([u8]), но это части типов.

Опять же, такой запрос не имеет смысла для меня, зачем вам какая-то группировка?

отрицание

Нет. Я считаю, что это связано с тем, что обработка негативной логики усложняет ситуацию.

другие операторы

Там есть ? (вопросительный знак) связаны.


Источник: я написал парсер кода Rust. Хотя, возможно, я что-то пропустил, он анализирует все файлы ~37500 Rust, которые я на него накинул, так что это очень хорошо подходит.

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