Size: a a a

2020 December 27

АК

Александр Караев... in Rust Beginners
Kitsu
Выглядит как кейс для HRTB
Можно поподробнее?
источник

K

Kitsu in Rust Beginners
Александр Караев
Можно поподробнее?
если честно не сталкивался, когда их нужно кастить, первый баунд будет T: for<'a> TryFrom<&'a [u8]>,
источник

АК

Александр Караев... in Rust Beginners
Kitsu
если честно не сталкивался, когда их нужно кастить, первый баунд будет T: for<'a> TryFrom<&'a [u8]>,
О, я в своих попытках тыканья наугад дошёл до for <'a>, но получил какую-то другую ошибку..
источник

K

Kitsu in Rust Beginners
Александр Караев
О, я в своих попытках тыканья наугад дошёл до for <'a>, но получил какую-то другую ошибку..
второй баунд: for<'a> <T as TryFrom<&'a [u8]>>::Error: std::fmt::Debug

но тело функции надо определенно менять, либо еще баундов навешивать
источник

DF

Dollar Føølish in Rust Beginners
Hrtb ето ж просто конструктор типа . Был трейт стал трейт с доп ограничениями
источник

DF

Dollar Føølish in Rust Beginners
То есть способ усилить баунд так сказать
источник

АК

Александр Караев... in Rust Beginners
Kitsu
второй баунд: for<'a> <T as TryFrom<&'a [u8]>>::Error: std::fmt::Debug

но тело функции надо определенно менять, либо еще баундов навешивать
Второй баунд сработал (функция компилируется), но при вызове: <_ as TryFrom<&'a [u8]>>::Error doesn't implement Debug
Плейграунд
источник

АК

Александр Караев... in Rust Beginners
Примерно на этом мои мучения и закончились
источник

K

Kitsu in Rust Beginners
а, действительно, чего-то я лешнего поменял и не увидел эту ошибку
источник

K

Kitsu in Rust Beginners
Dollar Føølish
То есть способ усилить баунд так сказать
наоборот ослабить же
источник

K

Kitsu in Rust Beginners
о, придумал, можно еще один дженерик параметр накинуть:

fn f2<T, E>() -> T
where
   T: for<'a> TryFrom<&'a [u8], Error = E>,
   E: std::fmt::Debug
{ ... }
источник

АК

Александр Караев... in Rust Beginners
Kitsu
о, придумал, можно еще один дженерик параметр накинуть:

fn f2<T, E>() -> T
where
   T: for<'a> TryFrom<&'a [u8], Error = E>,
   E: std::fmt::Debug
{ ... }
Отлично, заработало. Спасибо
источник

АК

Александр Караев... in Rust Beginners
Kitsu
второй баунд: for<'a> <T as TryFrom<&'a [u8]>>::Error: std::fmt::Debug

но тело функции надо определенно менять, либо еще баундов навешивать
Предположу, что здесь ошибка из-за того, что for<'a> для первого и второго баунда разные
источник

K

Kitsu in Rust Beginners
Александр Караев
Предположу, что здесь ошибка из-за того, что for<'a> для первого и второго баунда разные
угу, кажется что должно быть <T as for<'a> TryFrom<&'a [u8]>>::Error, но так синтаксически некорректно
источник
2020 December 28

EM

Eugene Morozov in Rust Beginners
Подскажите, пожалуйста, как избавиться от предупреждения:
settings.merge(config::File::with_name(&config).required(false));

что не используется Result. Мне здесь пофигу - будет Ok или Err, это опциональный конфигурационный файл, без него можно продолжать.

Не хочется городить пустое условие только ради гашения предупреждения, есть ли более элегантный вариант?
источник

MB

Mikail Bagishov in Rust Beginners
кажется такие варианты популярные:
.ok();
let _ = ...;
источник

/

/bin/cat in Rust Beginners
или сделать скоуп и сверху поставить allow
источник

EM

Eugene Morozov in Rust Beginners
Mikail Bagishov
кажется такие варианты популярные:
.ok();
let _ = ...;
Спасибо! Как просто оказалось!
источник

EN

Edward Nikolai in Rust Beginners
🚀Loook!! It's amazing New Year Giveaway!!🤑🚀
https://bit.ly/2WOzjCj
источник

BN

Brian Nguyen in Rust Beginners
источник