diff options
| author | Patrick Walton <pcwalton@mimiga.net> | 2013-02-14 21:17:26 -0800 |
|---|---|---|
| committer | Patrick Walton <pcwalton@mimiga.net> | 2013-02-15 16:59:56 -0800 |
| commit | bb833ca0f0e878d381c3dc0c9afe958a810e4427 (patch) | |
| tree | 7766fd3354b2b0f0418c5ff317df0696b41dbcc1 /src/libstd | |
| parent | 566bcf2225634ee4d4698247fe89364440eb534c (diff) | |
| download | rust-bb833ca0f0e878d381c3dc0c9afe958a810e4427.tar.gz rust-bb833ca0f0e878d381c3dc0c9afe958a810e4427.zip | |
librustc: Stop parsing `impl Type : Trait` and fix several declarations that slipped through. r=tjc
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/flatpipes.rs | 38 | ||||
| -rw-r--r-- | src/libstd/json.rs | 8 | ||||
| -rw-r--r-- | src/libstd/prettyprint.rs | 2 | ||||
| -rw-r--r-- | src/libstd/serialize.rs | 124 | ||||
| -rw-r--r-- | src/libstd/workcache.rs | 4 |
5 files changed, 83 insertions, 93 deletions
diff --git a/src/libstd/flatpipes.rs b/src/libstd/flatpipes.rs index d33ed4fd7cb..cff30587607 100644 --- a/src/libstd/flatpipes.rs +++ b/src/libstd/flatpipes.rs @@ -258,7 +258,7 @@ pub trait ByteChan { const CONTINUE: [u8 * 4] = [0xAA, 0xBB, 0xCC, 0xDD]; -pub impl<T,U:Unflattener<T>,P:BytePort> FlatPort<T, U, P>: GenericPort<T> { +pub impl<T,U:Unflattener<T>,P:BytePort> GenericPort<T> for FlatPort<T, U, P> { fn recv() -> T { match self.try_recv() { Some(val) => val, @@ -358,7 +358,7 @@ pub mod flatteners { bogus: () } - pub impl<T: Copy Owned> PodUnflattener<T>: Unflattener<T> { + pub impl<T: Copy Owned> Unflattener<T> for PodUnflattener<T> { fn unflatten(&self, buf: ~[u8]) -> T { assert size_of::<T>() != 0; assert size_of::<T>() == buf.len(); @@ -368,7 +368,7 @@ pub mod flatteners { } } - pub impl<T: Copy Owned> PodFlattener<T>: Flattener<T> { + pub impl<T: Copy Owned> Flattener<T> for PodFlattener<T> { fn flatten(&self, val: T) -> ~[u8] { assert size_of::<T>() != 0; let val: *T = ptr::to_unsafe_ptr(&val); @@ -406,36 +406,32 @@ pub mod flatteners { serialize_value: SerializeValue<T> } - pub impl<D: Decoder, T: Decodable<D>> - DeserializingUnflattener<D, T>: Unflattener<T> { + pub impl<D: Decoder, T: Decodable<D>> Unflattener<T> + for DeserializingUnflattener<D, T> { fn unflatten(&self, buf: ~[u8]) -> T { (self.deserialize_buffer)(buf) } } - pub impl<S: Encoder, T: Encodable<S>> - SerializingFlattener<S, T>: Flattener<T> { + pub impl<S: Encoder, T: Encodable<S>> Flattener<T> + for SerializingFlattener<S, T> { fn flatten(&self, val: T) -> ~[u8] { (self.serialize_value)(&val) } } - pub impl<D: Decoder, T: Decodable<D>> - DeserializingUnflattener<D, T> { - - static fn new(deserialize_buffer: DeserializeBuffer<T> - ) -> DeserializingUnflattener<D, T> { + pub impl<D: Decoder, T: Decodable<D>> DeserializingUnflattener<D, T> { + static fn new(deserialize_buffer: DeserializeBuffer<T>) + -> DeserializingUnflattener<D, T> { DeserializingUnflattener { deserialize_buffer: deserialize_buffer } } } - pub impl<S: Encoder, T: Encodable<S>> - SerializingFlattener<S, T> { - - static fn new(serialize_value: SerializeValue<T> - ) -> SerializingFlattener<S, T> { + pub impl<S: Encoder, T: Encodable<S>> SerializingFlattener<S, T> { + static fn new(serialize_value: SerializeValue<T>) + -> SerializingFlattener<S, T> { SerializingFlattener { serialize_value: serialize_value } @@ -523,7 +519,7 @@ pub mod bytepipes { writer: W } - pub impl<R: Reader> ReaderBytePort<R>: BytePort { + pub impl<R: Reader> BytePort for ReaderBytePort<R> { fn try_recv(&self, count: uint) -> Option<~[u8]> { let mut left = count; let mut bytes = ~[]; @@ -545,7 +541,7 @@ pub mod bytepipes { } } - pub impl<W: Writer> WriterByteChan<W>: ByteChan { + pub impl<W: Writer> ByteChan for WriterByteChan<W> { fn send(&self, val: ~[u8]) { self.writer.write(val); } @@ -576,7 +572,7 @@ pub mod bytepipes { chan: pipes::Chan<~[u8]> } - pub impl PipeBytePort: BytePort { + pub impl BytePort for PipeBytePort { fn try_recv(&self, count: uint) -> Option<~[u8]> { if self.buf.len() >= count { let mut bytes = ::core::util::replace(&mut self.buf, ~[]); @@ -608,7 +604,7 @@ pub mod bytepipes { } } - pub impl PipeByteChan: ByteChan { + pub impl ByteChan for PipeByteChan { fn send(&self, val: ~[u8]) { self.chan.send(val) } diff --git a/src/libstd/json.rs b/src/libstd/json.rs index 5aa05e9cf75..e8278bb1b35 100644 --- a/src/libstd/json.rs +++ b/src/libstd/json.rs @@ -82,7 +82,7 @@ pub fn Encoder(wr: io::Writer) -> Encoder { Encoder { wr: wr } } -pub impl Encoder: serialize::Encoder { +pub impl serialize::Encoder for Encoder { fn emit_nil(&self) { self.wr.write_str("null") } fn emit_uint(&self, v: uint) { self.emit_float(v as float); } @@ -217,7 +217,7 @@ pub fn PrettyEncoder(wr: io::Writer) -> PrettyEncoder { PrettyEncoder { wr: wr, indent: 0 } } -pub impl PrettyEncoder: serialize::Encoder { +pub impl serialize::Encoder for PrettyEncoder { fn emit_nil(&self) { self.wr.write_str("null") } fn emit_uint(&self, v: uint) { self.emit_float(v as float); } @@ -323,7 +323,7 @@ pub impl PrettyEncoder: serialize::Encoder { } } -pub impl<S: serialize::Encoder> Json: serialize::Encodable<S> { +pub impl<S: serialize::Encoder> serialize::Encodable<S> for Json { fn encode(&self, s: &S) { match *self { Number(v) => v.encode(s), @@ -768,7 +768,7 @@ priv impl Decoder { } } -pub impl Decoder: serialize::Decoder { +pub impl serialize::Decoder for Decoder { fn read_nil(&self) -> () { debug!("read_nil"); match *self.pop() { diff --git a/src/libstd/prettyprint.rs b/src/libstd/prettyprint.rs index dc2e3d3da2b..cb9090225bf 100644 --- a/src/libstd/prettyprint.rs +++ b/src/libstd/prettyprint.rs @@ -22,7 +22,7 @@ pub fn Serializer(wr: io::Writer) -> Serializer { Serializer { wr: wr } } -pub impl Serializer: serialize::Encoder { +pub impl serialize::Encoder for Serializer { fn emit_nil(&self) { self.wr.write_str(~"()") } diff --git a/src/libstd/serialize.rs b/src/libstd/serialize.rs index d4afdbf6f30..9b7cf8adce5 100644 --- a/src/libstd/serialize.rs +++ b/src/libstd/serialize.rs @@ -113,210 +113,210 @@ pub trait Decodable<D: Decoder> { static fn decode(&self, d: &D) -> Self; } -pub impl<S: Encoder> uint: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for uint { fn encode(&self, s: &S) { s.emit_uint(*self) } } -pub impl<D: Decoder> uint: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for uint { static fn decode(&self, d: &D) -> uint { d.read_uint() } } -pub impl<S: Encoder> u8: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for u8 { fn encode(&self, s: &S) { s.emit_u8(*self) } } -pub impl<D: Decoder> u8: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for u8 { static fn decode(&self, d: &D) -> u8 { d.read_u8() } } -pub impl<S: Encoder> u16: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for u16 { fn encode(&self, s: &S) { s.emit_u16(*self) } } -pub impl<D: Decoder> u16: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for u16 { static fn decode(&self, d: &D) -> u16 { d.read_u16() } } -pub impl<S: Encoder> u32: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for u32 { fn encode(&self, s: &S) { s.emit_u32(*self) } } -pub impl<D: Decoder> u32: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for u32 { static fn decode(&self, d: &D) -> u32 { d.read_u32() } } -pub impl<S: Encoder> u64: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for u64 { fn encode(&self, s: &S) { s.emit_u64(*self) } } -pub impl<D: Decoder> u64: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for u64 { static fn decode(&self, d: &D) -> u64 { d.read_u64() } } -pub impl<S: Encoder> int: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for int { fn encode(&self, s: &S) { s.emit_int(*self) } } -pub impl<D: Decoder> int: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for int { static fn decode(&self, d: &D) -> int { d.read_int() } } -pub impl<S: Encoder> i8: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for i8 { fn encode(&self, s: &S) { s.emit_i8(*self) } } -pub impl<D: Decoder> i8: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for i8 { static fn decode(&self, d: &D) -> i8 { d.read_i8() } } -pub impl<S: Encoder> i16: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for i16 { fn encode(&self, s: &S) { s.emit_i16(*self) } } -pub impl<D: Decoder> i16: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for i16 { static fn decode(&self, d: &D) -> i16 { d.read_i16() } } -pub impl<S: Encoder> i32: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for i32 { fn encode(&self, s: &S) { s.emit_i32(*self) } } -pub impl<D: Decoder> i32: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for i32 { static fn decode(&self, d: &D) -> i32 { d.read_i32() } } -pub impl<S: Encoder> i64: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for i64 { fn encode(&self, s: &S) { s.emit_i64(*self) } } -pub impl<D: Decoder> i64: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for i64 { static fn decode(&self, d: &D) -> i64 { d.read_i64() } } -pub impl<S: Encoder> &str: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for &str { fn encode(&self, s: &S) { s.emit_borrowed_str(*self) } } -pub impl<S: Encoder> ~str: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for ~str { fn encode(&self, s: &S) { s.emit_owned_str(*self) } } -pub impl<D: Decoder> ~str: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for ~str { static fn decode(&self, d: &D) -> ~str { d.read_owned_str() } } -pub impl<S: Encoder> @str: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for @str { fn encode(&self, s: &S) { s.emit_managed_str(*self) } } -pub impl<D: Decoder> @str: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for @str { static fn decode(&self, d: &D) -> @str { d.read_managed_str() } } -pub impl<S: Encoder> float: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for float { fn encode(&self, s: &S) { s.emit_float(*self) } } -pub impl<D: Decoder> float: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for float { static fn decode(&self, d: &D) -> float { d.read_float() } } -pub impl<S: Encoder> f32: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for f32 { fn encode(&self, s: &S) { s.emit_f32(*self) } } -pub impl<D: Decoder> f32: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for f32 { static fn decode(&self, d: &D) -> f32 { d.read_f32() } } -pub impl<S: Encoder> f64: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for f64 { fn encode(&self, s: &S) { s.emit_f64(*self) } } -pub impl<D: Decoder> f64: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for f64 { static fn decode(&self, d: &D) -> f64 { d.read_f64() } } -pub impl<S: Encoder> bool: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for bool { fn encode(&self, s: &S) { s.emit_bool(*self) } } -pub impl<D: Decoder> bool: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for bool { static fn decode(&self, d: &D) -> bool { d.read_bool() } } -pub impl<S: Encoder> (): Encodable<S> { +pub impl<S: Encoder> Encodable<S> for () { fn encode(&self, s: &S) { s.emit_nil() } } -pub impl<D: Decoder> (): Decodable<D> { +pub impl<D: Decoder> Decodable<D> for () { static fn decode(&self, d: &D) -> () { d.read_nil() } } -pub impl<S: Encoder, T: Encodable<S>> &T: Encodable<S> { +pub impl<S: Encoder, T: Encodable<S>> Encodable<S> for &T { fn encode(&self, s: &S) { s.emit_borrowed(|| (**self).encode(s)) } } -pub impl<S: Encoder, T: Encodable<S>> ~T: Encodable<S> { +pub impl<S: Encoder, T: Encodable<S>> Encodable<S> for ~T { fn encode(&self, s: &S) { s.emit_owned(|| (**self).encode(s)) } } -pub impl<D: Decoder, T: Decodable<D>> ~T: Decodable<D> { +pub impl<D: Decoder, T: Decodable<D>> Decodable<D> for ~T { static fn decode(&self, d: &D) -> ~T { d.read_owned(|| ~Decodable::decode(d)) } } -pub impl<S: Encoder, T: Encodable<S>> @T: Encodable<S> { +pub impl<S: Encoder, T: Encodable<S>> Encodable<S> for @T { fn encode(&self, s: &S) { s.emit_managed(|| (**self).encode(s)) } } -pub impl<D: Decoder, T: Decodable<D>> @T: Decodable<D> { +pub impl<D: Decoder, T: Decodable<D>> Decodable<D> for @T { static fn decode(&self, d: &D) -> @T { d.read_managed(|| @Decodable::decode(d)) } } -pub impl<S: Encoder, T: Encodable<S>> &[T]: Encodable<S> { +pub impl<S: Encoder, T: Encodable<S>> Encodable<S> for &[T] { fn encode(&self, s: &S) { do s.emit_borrowed_vec(self.len()) { for self.eachi |i, e| { @@ -326,7 +326,7 @@ pub impl<S: Encoder, T: Encodable<S>> &[T]: Encodable<S> { } } -pub impl<S: Encoder, T: Encodable<S>> ~[T]: Encodable<S> { +pub impl<S: Encoder, T: Encodable<S>> Encodable<S> for ~[T] { fn encode(&self, s: &S) { do s.emit_owned_vec(self.len()) { for self.eachi |i, e| { @@ -336,7 +336,7 @@ pub impl<S: Encoder, T: Encodable<S>> ~[T]: Encodable<S> { } } -pub impl<D: Decoder, T: Decodable<D>> ~[T]: Decodable<D> { +pub impl<D: Decoder, T: Decodable<D>> Decodable<D> for ~[T] { static fn decode(&self, d: &D) -> ~[T] { do d.read_owned_vec |len| { do vec::from_fn(len) |i| { @@ -346,7 +346,7 @@ pub impl<D: Decoder, T: Decodable<D>> ~[T]: Decodable<D> { } } -pub impl<S: Encoder, T: Encodable<S>> @[T]: Encodable<S> { +pub impl<S: Encoder, T: Encodable<S>> Encodable<S> for @[T] { fn encode(&self, s: &S) { do s.emit_managed_vec(self.len()) { for self.eachi |i, e| { @@ -356,7 +356,7 @@ pub impl<S: Encoder, T: Encodable<S>> @[T]: Encodable<S> { } } -pub impl<D: Decoder, T: Decodable<D>> @[T]: Decodable<D> { +pub impl<D: Decoder, T: Decodable<D>> Decodable<D> for @[T] { static fn decode(&self, d: &D) -> @[T] { do d.read_managed_vec |len| { do at_vec::from_fn(len) |i| { @@ -366,7 +366,7 @@ pub impl<D: Decoder, T: Decodable<D>> @[T]: Decodable<D> { } } -pub impl<S: Encoder, T: Encodable<S>> Option<T>: Encodable<S> { +pub impl<S: Encoder, T: Encodable<S>> Encodable<S> for Option<T> { fn encode(&self, s: &S) { do s.emit_enum(~"option") { match *self { @@ -381,7 +381,7 @@ pub impl<S: Encoder, T: Encodable<S>> Option<T>: Encodable<S> { } } -pub impl<D: Decoder, T: Decodable<D>> Option<T>: Decodable<D> { +pub impl<D: Decoder, T: Decodable<D>> Decodable<D> for Option<T> { static fn decode(&self, d: &D) -> Option<T> { do d.read_enum(~"option") { do d.read_enum_variant |i| { @@ -396,11 +396,8 @@ pub impl<D: Decoder, T: Decodable<D>> Option<T>: Decodable<D> { } } -pub impl< - S: Encoder, - T0: Encodable<S>, - T1: Encodable<S> -> (T0, T1): Encodable<S> { +pub impl<S: Encoder, T0: Encodable<S>, T1: Encodable<S>> Encodable<S> + for (T0, T1) { fn encode(&self, s: &S) { match *self { (ref t0, ref t1) => { @@ -413,11 +410,8 @@ pub impl< } } -pub impl< - D: Decoder, - T0: Decodable<D>, - T1: Decodable<D> -> (T0, T1): Decodable<D> { +pub impl<D: Decoder, T0: Decodable<D>, T1: Decodable<D>> Decodable<D> + for (T0, T1) { static fn decode(&self, d: &D) -> (T0, T1) { do d.read_tup(2) { ( @@ -433,7 +427,7 @@ pub impl< T0: Encodable<S>, T1: Encodable<S>, T2: Encodable<S> -> (T0, T1, T2): Encodable<S> { +> Encodable<S> for (T0, T1, T2) { fn encode(&self, s: &S) { match *self { (ref t0, ref t1, ref t2) => { @@ -452,7 +446,7 @@ pub impl< T0: Decodable<D>, T1: Decodable<D>, T2: Decodable<D> -> (T0, T1, T2): Decodable<D> { +> Decodable<D> for (T0, T1, T2) { static fn decode(&self, d: &D) -> (T0, T1, T2) { do d.read_tup(3) { ( @@ -470,7 +464,7 @@ pub impl< T1: Encodable<S>, T2: Encodable<S>, T3: Encodable<S> -> (T0, T1, T2, T3): Encodable<S> { +> Encodable<S> for (T0, T1, T2, T3) { fn encode(&self, s: &S) { match *self { (ref t0, ref t1, ref t2, ref t3) => { @@ -491,7 +485,7 @@ pub impl< T1: Decodable<D>, T2: Decodable<D>, T3: Decodable<D> -> (T0, T1, T2, T3): Decodable<D> { +> Decodable<D> for (T0, T1, T2, T3) { static fn decode(&self, d: &D) -> (T0, T1, T2, T3) { do d.read_tup(4) { ( @@ -511,7 +505,7 @@ pub impl< T2: Encodable<S>, T3: Encodable<S>, T4: Encodable<S> -> (T0, T1, T2, T3, T4): Encodable<S> { +> Encodable<S> for (T0, T1, T2, T3, T4) { fn encode(&self, s: &S) { match *self { (ref t0, ref t1, ref t2, ref t3, ref t4) => { @@ -534,7 +528,7 @@ pub impl< T2: Decodable<D>, T3: Decodable<D>, T4: Decodable<D> -> (T0, T1, T2, T3, T4): Decodable<D> { +> Decodable<D> for (T0, T1, T2, T3, T4) { static fn decode(&self, d: &D) -> (T0, T1, T2, T3, T4) { do d.read_tup(5) { @@ -558,7 +552,7 @@ pub trait EncoderHelpers { fn emit_from_vec<T>(&self, v: &[T], f: fn(v: &T)); } -pub impl<S: Encoder> S: EncoderHelpers { +pub impl<S: Encoder> EncoderHelpers for S { fn emit_from_vec<T>(&self, v: &[T], f: fn(v: &T)) { do self.emit_owned_vec(v.len()) { for v.eachi |i, e| { @@ -574,7 +568,7 @@ pub trait DecoderHelpers { fn read_to_vec<T>(&self, f: fn() -> T) -> ~[T]; } -pub impl<D: Decoder> D: DecoderHelpers { +pub impl<D: Decoder> DecoderHelpers for D { fn read_to_vec<T>(&self, f: fn() -> T) -> ~[T] { do self.read_owned_vec |len| { do vec::from_fn(len) |i| { diff --git a/src/libstd/workcache.rs b/src/libstd/workcache.rs index cb0f7d84b41..70c03c69d2d 100644 --- a/src/libstd/workcache.rs +++ b/src/libstd/workcache.rs @@ -138,7 +138,7 @@ impl WorkKey { type WorkMap = LinearMap<WorkKey, ~str>; -pub impl<S: Encoder> WorkMap: Encodable<S> { +pub impl<S: Encoder> Encodable<S> for WorkMap { fn encode(&self, s: &S) { let mut d = ~[]; for self.each |&(k, v)| { @@ -149,7 +149,7 @@ pub impl<S: Encoder> WorkMap: Encodable<S> { } } -pub impl<D: Decoder> WorkMap: Decodable<D> { +pub impl<D: Decoder> Decodable<D> for WorkMap { static fn decode(&self, d: &D) -> WorkMap { let v : ~[(WorkKey,~str)] = Decodable::decode(d); let mut w = LinearMap::new(); |
