Что может код со скобками, чего не может код без

них?

10 ответов

22 просмотра

Он может работать со структурами внутри enum, без скобок это варианты enum, структур объявленых там нет

такое не сможет: fn foo(value: Structs) { match value { Structs::struct1(data) => println!("{:?}", data), Structs::struct2(data) => println!("{:?}", data), Structs::struct3(data) => println!("{:?}", data), } }

переименовывать варианты?

Василий- Автор вопроса
Денис Невмержицкий
такое не сможет: fn foo(value: Structs) { matc...

А что мешает вместо этого кода сделать так: fn foo(value: Structs) { match value { Structs::struct1 => println!("{:?}", value), Structs::struct2 => println!("{:?}", value), Structs::struct3 => println!("{:?}", value), } } enum же можно вывести в дебаге автоматом, если трейт наследован?

Василий
А что мешает вместо этого кода сделать так: fn foo...

Абсолютно другое поведение будет у этого кода

Василий- Автор вопроса
Alexey
Абсолютно другое поведение будет у этого кода

Окей, видимо надо поиграться с этими структурами. Спасибо за ответы!

Василий
А что мешает вместо этого кода сделать так: fn foo...

Просто попробуй сохранить данные в такой enum, или получить данные из enum. Как будет выглядеть такой код?

Василий
Окей, видимо надо поиграться с этими структурами. ...

Взгляните вот здесь на enum Message https://doc.rust-lang.org/book/ch06-01-defining-an-enum.html Вы поймете что я и другие ответившие подразумевали

Василий- Автор вопроса
Alexey
Взгляните вот здесь на enum Message https://doc.ru...

Я разобрался, спасибо! Я почему-то думал, что если можно написать enum Message { Move { x: i32, y: i32 } } то это будет тоже самое, что struct Move { x: i32, y: i32 }; enum Message { Move } То есть Rust поймет, что Move это уже определенная структура, и автоматически неявно подставит { x: i32, y: i32 }. Но он так не делает...

Похожие вопросы

Обсуждают сегодня

Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
Ребята, всем привет. Подскажите, пожалуйста, можно ли как-то через бота понять, что этого бота добавили в группу\канал и выдали ему права администратора?
Artem Stormageddon
9
Привет всем! Почему этот код не срабатывает при добавлении или удалении пользователя из чата? bot.on('chat_member', async (ctx) => { console.log(ctx); }) bot.launch({allo...
Alexander
7
Всем привет. Не понимаю, в чём тут шутка юмора. Убирается только разрешение на send_messages. А send_media_messages остаётся. Как сделать, чтобы оба убирались? await b...
Alexander
2
Есть тут кто занимается разработкой серваков майна? Или знакомые
meow *
3
'frakturBold' => ['𝖆', '𝖇', '𝖈', '𝖉', '𝖊', '𝖋', '𝖌', '𝖍', '𝖎', '𝖏', '𝖐', '𝖑', '𝖒', '𝖓', '𝖔', '𝖕', '𝖖', '𝖗', '𝖘', '𝖙', '𝖚', '𝖛', '𝖜', '𝖝', '𝖞', '𝖟', '𝕬', '𝕭', '𝕮', '𝕯'...
Roma
4
Есть ли лимиты на кол-во вебхук по домену? Стоит в данный момент 900+ ботов и бывает бот перестает отвечать (не приходят вебхуки) 🐒 Помогает только перезапуск
ᅠ [ Кому не ответил, дублируйте ]
11
а что делать если тебя убивают на картах?
Yarik yarik kyda ti lezesh
43
Товарищи, здравствуйте Подскажите, пожалуйста, может кто-нибудь сталкивался с такой задачей Через вебапку можно сканировать qr-код, а есть ли возможность считывать nfc?
Artem Stormageddon
8
Карта сайта