我正在尝试在Rust中创建一个编译器,但是我在理解如何使用枚举定义类型层次结构时遇到了问题.我们有例如:
enum Thing {
Animal,
Plant,
}
struct Plant {
color: String,
}
enum Animal {
Dog,
Cat,
}
struct Cat {
name: String,
}
struct Dog {
name: String,
}
let x = Dog { name: john };
Run Code Online (Sandbox Code Playgroud)
如果我进行模式匹配,会Dog考虑Animal类型(或Thing类型)吗?如何使用枚举和结构创建此类型层次结构?我的类型层次结构有很多层次的深度.
rust ×1