about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2013-01-14 12:56:31 -0800
committerBrian Anderson <banderson@mozilla.com>2013-01-14 12:56:31 -0800
commitfc582bcfcedc5154b98b45bb5e41eddfcd3a1f74 (patch)
treebd42e7dac410c924c8f22db56536f7ce6f07df1b /src/libsyntax
parent76bcfe8025249c787cba04f2fb035f4915db0a36 (diff)
parent2b6c456bf648e5a7b408b550649d409378e39539 (diff)
downloadrust-fc582bcfcedc5154b98b45bb5e41eddfcd3a1f74.tar.gz
rust-fc582bcfcedc5154b98b45bb5e41eddfcd3a1f74.zip
Merge remote-tracking branch 'mneumann/f-serialize'
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/ext/auto_encode.rs6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/libsyntax/ext/auto_encode.rs b/src/libsyntax/ext/auto_encode.rs
index 2b3fefd6e51..4afd2e1f7f8 100644
--- a/src/libsyntax/ext/auto_encode.rs
+++ b/src/libsyntax/ext/auto_encode.rs
@@ -25,7 +25,7 @@ would generate two implementations like:
 
     impl<S: Encoder> node_id: Encodable<S> {
         fn encode(s: &S) {
-            do s.emit_struct("Node") {
+            do s.emit_struct("Node", 1) {
                 s.emit_field("id", 0, || s.emit_uint(self))
             }
         }
@@ -33,7 +33,7 @@ would generate two implementations like:
 
     impl<D: Decoder> node_id: Decodable {
         static fn decode(d: &D) -> Node {
-            do d.read_struct("Node") {
+            do d.read_struct("Node", 1) {
                 Node {
                     id: d.read_field(~"x", 0, || decode(d))
                 }
@@ -709,6 +709,7 @@ fn mk_struct_ser_impl(
         ),
         ~[
             cx.lit_str(span, @cx.str_of(ident)),
+            cx.lit_uint(span, vec::len(fields)),
             cx.lambda_stmts(span, fields),
         ]
     );
@@ -735,6 +736,7 @@ fn mk_struct_deser_impl(
         ),
         ~[
             cx.lit_str(span, @cx.str_of(ident)),
+            cx.lit_uint(span, vec::len(fields)),
             cx.lambda_expr(
                 cx.expr(
                     span,