小编moc*_*chi的帖子

如何处理从HashMap获得的值

我希望我的getv()函数从a返回值HashMap.无论我如何修改代码,我都会收到错误:

enum Type {
    TyInt,
    TyBool,
}

struct TypeEnv {
    Env: HashMap<char, Type>,
}
impl TypeEnv {
    fn set(&mut self, name: char, ty: Type) {
        self.Env.insert(name, ty);
    }

    fn getv(self, name: char) -> Type {
        match self.Env.get(&name) {
            Some(Type) => Type, // <------- Always error here
            None => Type::TyInt,
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

rust

2
推荐指数
1
解决办法
840
查看次数

标签 统计

rust ×1