Size: a a a

2020 January 19

AM

Aleksey Muravev in ГОРИ
Lain-dono
А у нас вместо хрени ты получишь МОНАДУ. Ну всмысле будет явная ошибка. Но никто не насрёт в int.

fn load_keys(path: impl AsRef<Path>) -> Result<Keys, io::Error> {
   // твой код загрузки
}
Там же текст. Парсю, как хочу.
источник

L

Lain-dono in ГОРИ
Aleksey Muravev
Там же текст. Парсю, как хочу.
Я тебе за 30 минут могу написать работающий пример. С учётом времени на то, чтоб чайку заварить.
источник

AM

Aleksey Muravev in ГОРИ
Lain-dono
Я тебе за 30 минут могу написать работающий пример. С учётом времени на то, чтоб чайку заварить.
Да мне пофиг)
Не парься
источник

L

Lain-dono in ГОРИ
Aleksey Muravev
Да мне пофиг)
Не парься
Так-то мне всё равно систему ввода дописывать ещё. Так что вот мотивация глянуть на эту часть.
источник

L

Lain-dono in ГОРИ
Aleksey Muravev
Да мне пофиг)
Не парься
Всё равно. Мне интересно жи.
источник

L

Lain-dono in ГОРИ
Aleksey Muravev
Да мне пофиг)
Не парься
https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=208555d54300a7c4bbadbdb26358ebb4

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

L

Lain-dono in ГОРИ
Ну и как вам наши тулчейны, который нет?
источник

AM

Aleksey Muravev in ГОРИ
Lain-dono
https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=208555d54300a7c4bbadbdb26358ebb4

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

AM

Aleksey Muravev in ГОРИ
Lain-dono
Ну и как вам наши тулчейны, который нет?
Их под консоли нет.
источник

AM

Aleksey Muravev in ГОРИ
Из всего листинга вынес, что там у тебя 2 енума, структура с одной единственной хешмапой(!), json в строке и он сам одной функцией в хешмапу парсится с нужны и типами?
источник

L

Lain-dono in ГОРИ
Aleksey Muravev
Ты из строки сразу в структуру спарсил?
Да. Если ты запихнёшь туды что-то помимо точных имён энумов, то будет ошибка. Попробуй.

Алсо если тебя не устраивает, какие имена в json, то там есть всякие алиасы и вообще дофига всего. Ну или можно самому написать для совсем сложных случаев. Там дофига доков по всем возможностьям: https://serde.rs/
источник

AM

Aleksey Muravev in ГОРИ
Lain-dono
Да. Если ты запихнёшь туды что-то помимо точных имён энумов, то будет ошибка. Попробуй.

Алсо если тебя не устраивает, какие имена в json, то там есть всякие алиасы и вообще дофига всего. Ну или можно самому написать для совсем сложных случаев. Там дофига доков по всем возможностьям: https://serde.rs/
Какая ещё ошибка? Невалидные значения не должны ронять ничего
источник

L

Lain-dono in ГОРИ
Aleksey Muravev
Из всего листинга вынес, что там у тебя 2 енума, структура с одной единственной хешмапой(!), json в строке и он сам одной функцией в хешмапу парсится с нужны и типами?
Да. Именно так. Вся магия в #[derive(Deserialize)]. Эта штука - генератор всей обвязки. Точнее той части, которая будет инвариантна относительно формата хранения.
источник

L

Lain-dono in ГОРИ
Aleksey Muravev
Какая ещё ошибка? Невалидные значения не должны ронять ничего
У тебя json содержит невалидные данные. Твои действия? Я почему спрашиваю, там же несколько вариантов есть.
источник

L

Lain-dono in ГОРИ
Aleksey Muravev
Какая ещё ошибка? Невалидные значения не должны ронять ничего
источник

AM

Aleksey Muravev in ГОРИ
Lain-dono
У тебя json содержит невалидные данные. Твои действия? Я почему спрашиваю, там же несколько вариантов есть.
Игноришь. Там дефолтные значения и так стоят у всего.
источник

AM

Aleksey Muravev in ГОРИ
Там же всё валидно. Оно не должно от порядка зависеть
источник

L

Lain-dono in ГОРИ
Aleksey Muravev
Там же всё валидно. Оно не должно от порядка зависеть
источник

L

Lain-dono in ГОРИ
Aleksey Muravev
Там же всё валидно. Оно не должно от порядка зависеть
Собсна в данном конкретном случае у меня хешмапа. Если пропустишь значение, то оно не попадёт в хешмапу. Пример дать, как это выглядит и обрабатывается? Там уже про другую МОНАДУ, которая Option. Даже не увидим её, лол.
источник

AM

Aleksey Muravev in ГОРИ
Lain-dono
Собсна в данном конкретном случае у меня хешмапа. Если пропустишь значение, то оно не попадёт в хешмапу. Пример дать, как это выглядит и обрабатывается? Там уже про другую МОНАДУ, которая Option. Даже не увидим её, лол.
Не парься. Я код раста понимаю на 10%
источник