Rust 怎么规定函数返回类型为 enum 的一个特定 variant
enum E {
A(isize),
B(isize)
}
fn get_A() -> E {
E::A(1)
}
fn main() {
let E::A(a) = get_A(); // refutable pattern in local binding: `B(_)` not covered
}
怎么让编译器知道 get_A 就只会返回 E::A。
如果不行,能不能把他的返回值强制断言成 E::A。
如果确实不行,能不能提供一下别的建议。
谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
请尝试通过 newtype 模式 来构建: