строке? Если строка закомментирована, анализатор говорит, что не может собрать collect'ом нужный тип, но стоит добавить try_into, то всё получается. Почему так?
А как выглядит тип PockerHand?
Ну там проблема что он [CardPair;5], я нагуглил что там проблемы с коллектом в массивы*, нужно реализовывать FromIterator, но там свои проблемы и как решение там рекомендовали try_into
В типе массив, а collect возвращает вектор, try_into нужен для преобразования вектора в массив
В дополнение к сказанному выше: 1. impl From не должен паниковать. Если он может зафейлиться (как тут из-за неправильного количества), то вместо него должен использоваться TryFrom 2. Для парсинга есть `FromStr`
это описание того что делает указанный код, я спрашиваю почему try_into может сделать то, что не может сделать collect причём даже без дополнительных указаний типов или вроде того.
Потому что collect не может вернуть ошибку И какое должно быть поведение, если там не ровно столько элементов, сколько надо?
Резонный вопрос, да, но там пишут что нужен FromIterator, а не то, что не возможно определить количество элементов...
FromIterator нет как раз потому, что непонятно что делать если в итераторе неправильное количество элементов
Обсуждают сегодня