Информация об изменениях

Сообщение Re[6]: Option vs ? - критика Rust от 22.10.2023 11:27

Изменено 22.10.2023 11:30 Быдлокодер

Re[6]: Option vs ? - критика Rust
Здравствуйте, gandjustas, Вы писали:


G>Фишка в том, что в C# в разных контекстах используется ?. и ?? не получится заменить один на дугой и получить код похожий на валидный.


А как бы Вы предложили реализовать оператор ?? в Rust? Насколько я понимаю, Option — это обычный enum, и у значения None нет какой-то особой поддержки на уровне языка, в отличии от null в C#.

Оператор ! уже занят, для указания типов, которые не возвращают значения. Да и в языке просто нет нулевых ссылок.
fn inf() -> ! {
        loop {
        
        }
    }
Re[6]: Option vs ? - критика Rust
Здравствуйте, gandjustas, Вы писали:


G>Фишка в том, что в C# в разных контекстах используется ?. и ?? не получится заменить один на дугой и получить код похожий на валидный.


А как бы Вы предложили реализовать оператор ?? в Rust? Насколько я понимаю, Option — это обычный enum, и у значения None нет какой-то особой поддержки на уровне языка, в отличии от null в C#.
Так же, насколько я понимаю, в идиоматическом Rust операторы присваивания встречаются редко, соответственно и потребность в ?? тоже ниже.

Оператор ! уже занят, для указания типов, которые не возвращают значения. Да и в языке просто нет нулевых ссылок.
fn inf() -> ! {
        loop {
        
        }
    }