2017-02-26 94 views
1

我在项目中使用这个数据结构匿名枚举:拉斯特

#[derive(Serialize, Deserialize)] 
pub enum Field { 
    last_name(String), 
    first_name(String), 
    /* etc. */ 
} 

#[derive(Serialize, Deserialize)] 
pub struct Update { 
    pub id: Id, 
    pub field: Field, 
} 

枚举本身不是真的很有用,我用它的JSON的反序列化。那么是否有可能做这样的事情?

#[derive(Serialize, Deserialize)] 
pub struct PersonUpdate { 
    pub id: Id, 
    pub field: enum { 
     last_name(String), 
     first_name(String), 
    } 
} 
+0

最近有关于内部论坛的一些讨论:https://internals.rust-lang.org/t/pre-rfc-anonymous-enum/4806 –

回答

4

这是不可能的,你必须给它一个名字,就像你在第一个例子中所做的那样。