Каковы возможные операторы для черт в предложении where в Rust?
Я изучаю Rust и попал в главу о границах черт. В этой главе они приводят пример с +
(плюс) оператор, чтобы перечислить все необходимые черты в where
пункт.
Какие еще операторы разрешены по чертам в Rust? Я искал, но я не смог найти никакой документации по этому поводу. Поддерживает ли Rust 'или' нотацию, скобки, отрицание?
1 ответ
или обозначение
Нет. Такая вещь не имеет смысла для меня - что будет делать код, если что-то может быть A
ИЛИ ЖЕ B
?
скобки
Нет, если не считать скобки в Fn(...)
и друзья, использование угловых скобок в качестве дженериков (Vec<T>
) или использование квадратных скобок в срезах ([u8]
), но это части типов.
Опять же, такой запрос не имеет смысла для меня, зачем вам какая-то группировка?
отрицание
Нет. Я считаю, что это связано с тем, что обработка негативной логики усложняет ситуацию.
другие операторы
Там есть ?
(вопросительный знак) связаны.
Источник: я написал парсер кода Rust. Хотя, возможно, я что-то пропустил, он анализирует все файлы ~37500 Rust, которые я на него накинул, так что это очень хорошо подходит.