rust-将泛型元组转换为 Result(value, _),(当没有可能的错误时)
发布时间:2022-06-26 11:48:23 306
相关标签: # scala
好的,我使用的是一个ffi库,它使用C,无论出于什么原因,当我从一个库函数中得到一个值的迭代器时,这个函数永远不会失败,但如果失败了,它会返回一些错误的东西。我已经处理了所有的检查,以确保用户(这个api的)迭代的信息是正确的还是没有/没有更少的信息(如果其中一些信息是错误的),但我需要将迭代器的所有值包装到一个结果中,即使这个库没有返回选项或结果,这样它就可以与一堆其他代码一起工作(这是我正在实现的一个通用特性)。
我尝试使用迭代器并使用
.map(|res| Ok(res))
但是,这不起作用,因为编译器无法推断e
.我还尝试使用
Result<_,_>
喜欢.map(|res| Result
但显然这不是一个表达) 对上一个稍作修改我也试过了
.map(|res| new: Result
然而,当res为时,结果是不可变的,并且它再次失败。)
所以我真的不知道该怎么办。我真的希望所有值的映射都是内联的,错误可以是任何东西,因为永远不会有有有意义的错误,但是我仍然需要Result
我的一般特征的对象。
P、 我不确定这是否有帮助,但res的类型是(alloc::boxed::Box<[u8]>, alloc::boxed::Box<[u8]>)
.
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报