diff options
| author | Michael Sullivan <sully@msully.net> | 2012-06-22 11:58:07 -0700 |
|---|---|---|
| committer | Michael Sullivan <sully@msully.net> | 2012-06-22 11:58:07 -0700 |
| commit | 275c1e44383bbacd8d81a9f80df9ad4da99f0168 (patch) | |
| tree | 8dfb225767b7a3a803c1cf6e69838404091dd5c6 /src/libsyntax/ext | |
| parent | 986662cebd3f41911cb72c18f4e824a4856b009b (diff) | |
| download | rust-275c1e44383bbacd8d81a9f80df9ad4da99f0168.tar.gz rust-275c1e44383bbacd8d81a9f80df9ad4da99f0168.zip | |
Serialize out uniq vecs types
Diffstat (limited to 'src/libsyntax/ext')
| -rw-r--r-- | src/libsyntax/ext/auto_serialize.rs | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/src/libsyntax/ext/auto_serialize.rs b/src/libsyntax/ext/auto_serialize.rs index 75a88fb221b..fe9f59d5538 100644 --- a/src/libsyntax/ext/auto_serialize.rs +++ b/src/libsyntax/ext/auto_serialize.rs @@ -452,10 +452,7 @@ fn ser_ty(cx: ext_ctxt, tps: ser_tps_map, [] } - ast::ty_vstore(_, _) { - cx.span_unimpl(ty.span, "serialization for vstore types"); - } - + ast::ty_vstore(@{node: ast::ty_vec(mt),_}, ast::vstore_uniq) | ast::ty_vec(mt) { let ser_e = cx.expr( @@ -472,6 +469,11 @@ fn ser_ty(cx: ext_ctxt, tps: ser_tps_map, std::serialization::emit_from_vec($(s), $(v), {|__e| $(ser_e) }) }] } + + ast::ty_vstore(_, _) { + cx.span_unimpl(ty.span, "serialization for vstore types"); + } + } } @@ -673,14 +675,15 @@ fn deser_ty(cx: ext_ctxt, tps: deser_tps_map, #ast{ fail } } - ast::ty_vstore(_, _) { - cx.span_unimpl(ty.span, "deserialization for vstore types"); - } - + ast::ty_vstore(@{node: ast::ty_vec(mt),_}, ast::vstore_uniq) | ast::ty_vec(mt) { let l = deser_lambda(cx, tps, mt.ty, cx.clone(d)); #ast{ std::serialization::read_to_vec($(d), $(l)) } } + + ast::ty_vstore(_, _) { + cx.span_unimpl(ty.span, "deserialization for vstore types"); + } } } |
