@@ -96,19 +96,15 @@ pub struct mt {
9696    mutbl :  ast:: mutability , 
9797} 
9898
99- #[ auto_encode]  
100- #[ auto_decode]  
101- #[ deriving( Eq ) ]  
99+ #[ deriving( Eq ,  Encodable ,  Decodable ) ]  
102100pub  enum  vstore  { 
103101    vstore_fixed( uint ) , 
104102    vstore_uniq, 
105103    vstore_box, 
106104    vstore_slice( Region ) 
107105} 
108106
109- #[ auto_encode]  
110- #[ auto_decode]  
111- #[ deriving( Eq ,  IterBytes ) ]  
107+ #[ deriving( Eq ,  IterBytes ,  Encodable ,  Decodable ) ]  
112108pub  enum  TraitStore  { 
113109    BoxTraitStore ,               // @Trait 
114110    UniqTraitStore ,              // ~Trait 
@@ -117,9 +113,7 @@ pub enum TraitStore {
117113
118114// XXX: This should probably go away at some point. Maybe after destructors 
119115// do? 
120- #[ auto_encode]  
121- #[ auto_decode]  
122- #[ deriving( Eq ) ]  
116+ #[ deriving( Eq ,  Encodable ,  Decodable ) ]  
123117pub  enum  SelfMode  { 
124118    ByCopy , 
125119    ByRef , 
@@ -197,27 +191,22 @@ pub enum ast_ty_to_ty_cache_entry {
197191
198192pub  type  opt_region_variance  = Option < region_variance > ; 
199193
200- #[ auto_encode]  
201- #[ auto_decode]  
202- #[ deriving( Eq ) ]  
194+ #[ deriving( Eq ,  Decodable ,  Encodable ) ]  
203195pub  enum  region_variance  {  rv_covariant,  rv_invariant,  rv_contravariant } 
204196
205- #[ auto_encode]  
206- #[ auto_decode]  
197+ #[ deriving( Decodable ,  Encodable ) ]  
207198pub  enum  AutoAdjustment  { 
208199    AutoAddEnv ( ty:: Region ,  ast:: Sigil ) , 
209200    AutoDerefRef ( AutoDerefRef ) 
210201} 
211202
212- #[ auto_encode]  
213- #[ auto_decode]  
203+ #[ deriving( Decodable ,  Encodable ) ]  
214204pub  struct  AutoDerefRef  { 
215205    autoderefs :  uint , 
216206    autoref :  Option < AutoRef > 
217207} 
218208
219- #[ auto_encode]  
220- #[ auto_decode]  
209+ #[ deriving( Decodable ,  Encodable ) ]  
221210pub  enum  AutoRef  { 
222211    /// Convert from T to &T 
223212     AutoPtr ( Region ,  ast:: mutability ) , 
@@ -453,9 +442,7 @@ pub struct param_ty {
453442} 
454443
455444/// Representation of regions: 
456- #[ auto_encode]  
457- #[ auto_decode]  
458- #[ deriving( Eq ,  IterBytes ) ]  
445+ #[ deriving( Eq ,  IterBytes ,  Encodable ,  Decodable ) ]  
459446pub  enum  Region  { 
460447    /// Bound regions are found (primarily) in function types.  They indicate 
461448     /// region parameters that have yet to be replaced with actual regions 
@@ -501,17 +488,13 @@ pub impl Region {
501488    } 
502489} 
503490
504- #[ auto_encode]  
505- #[ auto_decode]  
506- #[ deriving( Eq ,  IterBytes ) ]  
491+ #[ deriving( Eq ,  IterBytes ,  Encodable ,  Decodable ) ]  
507492pub  struct  FreeRegion  { 
508493    scope_id :  node_id , 
509494    bound_region :  bound_region 
510495} 
511496
512- #[ auto_encode]  
513- #[ auto_decode]  
514- #[ deriving( Eq ,  IterBytes ) ]  
497+ #[ deriving( Eq ,  IterBytes ,  Encodable ,  Decodable ) ]  
515498pub  enum  bound_region  { 
516499    /// The self region for structs, impls (&T in a type defn or &'self T) 
517500     br_self, 
@@ -742,9 +725,7 @@ pub struct IntVid(uint);
742725#[ deriving( Eq ) ]  
743726pub  struct  FloatVid ( uint ) ; 
744727
745- #[ deriving( Eq ) ]  
746- #[ auto_encode]  
747- #[ auto_decode]  
728+ #[ deriving( Eq ,  Encodable ,  Decodable ) ]  
748729pub  struct  RegionVid  { 
749730    id :  uint 
750731} 
@@ -777,8 +758,7 @@ impl to_bytes::IterBytes for InferTy {
777758    } 
778759} 
779760
780- #[ auto_encode]  
781- #[ auto_decode]  
761+ #[ deriving( Encodable ,  Decodable ) ]  
782762pub  enum  InferRegion  { 
783763    ReVar ( RegionVid ) , 
784764    ReSkolemized ( uint ,  bound_region ) 
0 commit comments