diff --git a/implementations/rust/preserves/src/value/packed/mod.rs b/implementations/rust/preserves/src/value/packed/mod.rs index 0417aac..94bee65 100644 --- a/implementations/rust/preserves/src/value/packed/mod.rs +++ b/implementations/rust/preserves/src/value/packed/mod.rs @@ -9,7 +9,7 @@ use std::io; use super::{BinarySource, DomainDecode, IOValue, IOValueDomainCodec, NestedValue, Reader}; -pub fn from_bytes>( +pub fn from_bytes>( bs: &[u8], decode_embedded: Dec, ) -> io::Result { @@ -20,7 +20,7 @@ pub fn iovalue_from_bytes(bs: &[u8]) -> io::Result { from_bytes(bs, IOValueDomainCodec) } -pub fn annotated_from_bytes>( +pub fn annotated_from_bytes>( bs: &[u8], decode_embedded: Dec, ) -> io::Result { diff --git a/implementations/rust/preserves/src/value/packed/reader.rs b/implementations/rust/preserves/src/value/packed/reader.rs index 2b1efb8..388fef0 100644 --- a/implementations/rust/preserves/src/value/packed/reader.rs +++ b/implementations/rust/preserves/src/value/packed/reader.rs @@ -30,13 +30,13 @@ use super::super::{ signed_integer::SignedInteger, }; -pub struct PackedReader<'de, 'src, N: NestedValue, Dec: DomainDecode, S: BinarySource<'de>> { +pub struct PackedReader<'de, 'src, N: NestedValue, Dec: DomainDecode, S: BinarySource<'de>> { pub source: &'src mut S, pub decode_embedded: Dec, phantom: PhantomData<&'de N>, } -impl<'de, 'src, N: NestedValue, Dec: DomainDecode, S: BinarySource<'de>> +impl<'de, 'src, N: NestedValue, Dec: DomainDecode, S: BinarySource<'de>> BinarySource<'de> for PackedReader<'de, 'src, N, Dec, S> { @@ -65,7 +65,7 @@ fn out_of_range>(i: I) -> error::Error { error::Error::NumberOutOfRange(i.into()) } -impl<'de, 'src, N: NestedValue, Dec: DomainDecode, S: BinarySource<'de>> PackedReader<'de, 'src, N, Dec, S> { +impl<'de, 'src, N: NestedValue, Dec: DomainDecode, S: BinarySource<'de>> PackedReader<'de, 'src, N, Dec, S> { pub fn new(source: &'src mut S, decode_embedded: Dec) -> Self { PackedReader { source, decode_embedded, phantom: PhantomData } } @@ -257,7 +257,7 @@ impl<'de, 'src, N: NestedValue, Dec: DomainDecode, S: BinarySource<'de>> P } } -impl<'de, 'src, N: NestedValue, Dec: DomainDecode, S: BinarySource<'de>> +impl<'de, 'src, N: NestedValue, Dec: DomainDecode, S: BinarySource<'de>> Reader<'de, N> for PackedReader<'de, 'src, N, Dec, S> { diff --git a/implementations/rust/preserves/src/value/packed/writer.rs b/implementations/rust/preserves/src/value/packed/writer.rs index c656570..6a0953f 100644 --- a/implementations/rust/preserves/src/value/packed/writer.rs +++ b/implementations/rust/preserves/src/value/packed/writer.rs @@ -16,7 +16,7 @@ use super::super::writer::{Writer, CompoundWriter, varint}; pub struct PackedWriter(Suspendable); impl PackedWriter<&mut Vec> { - pub fn encode>( + pub fn encode>( enc: &mut Enc, v: &N, ) -> io::Result> { diff --git a/implementations/rust/preserves/src/value/reader.rs b/implementations/rust/preserves/src/value/reader.rs index 9940288..72d583c 100644 --- a/implementations/rust/preserves/src/value/reader.rs +++ b/implementations/rust/preserves/src/value/reader.rs @@ -19,7 +19,7 @@ use super::signed_integer::SignedInteger; pub type ReaderResult = std::result::Result; pub enum Token { - Embedded(N::D), + Embedded(N::Embedded), Atom(N), Compound(CompoundClass), End, @@ -229,7 +229,7 @@ pub trait BinarySource<'de>: Sized { fn readbytes(&mut self, count: usize) -> io::Result>; fn readbytes_into(&mut self, bs: &mut [u8]) -> io::Result<()>; - fn packed>( + fn packed>( &mut self, decode_embedded: Dec, ) -> super::PackedReader<'de, '_, N, Dec, Self> { @@ -242,10 +242,10 @@ pub trait BinarySource<'de>: Sized { self.packed(IOValueDomainCodec) } - fn text>( + fn text>( &mut self, decode_embedded: Dec, - ) -> super::TextReader<'de, '_, N::D, Dec, Self> { + ) -> super::TextReader<'de, '_, N::Embedded, Dec, Self> { super::TextReader::new(self, decode_embedded) } diff --git a/implementations/rust/preserves/src/value/repr.rs b/implementations/rust/preserves/src/value/repr.rs index baeac36..d41e66b 100644 --- a/implementations/rust/preserves/src/value/repr.rs +++ b/implementations/rust/preserves/src/value/repr.rs @@ -26,13 +26,13 @@ impl Embeddable for T where T: Domain + Clone {} impl Domain for Arc {} pub trait NestedValue: Sized + Debug + Clone + Eq + Hash + Ord { - type D: Embeddable; + type Embedded: Embeddable; fn new(v: V) -> Self where Value: From { Value::from(v).wrap() } - fn domain(e: E) -> Self where Self::D: From { + fn domain(e: E) -> Self where Self::Embedded: From { Value::Embedded(e.into()).wrap() } @@ -64,14 +64,14 @@ pub trait NestedValue: Sized + Debug + Clone + Eq + Hash + Ord { fn copy_via(&self, f: &mut F) -> Result where - F: FnMut(&Self::D) -> Result, Err> + F: FnMut(&Self::Embedded) -> Result, Err> { Ok(M::wrap(self.annotations().copy_via(f)?, self.value().copy_via(f)?)) } fn foreach_embedded(&self, f: &mut F) -> Result<(), Err> where - F: FnMut(&Self::D) -> Result<(), Err> + F: FnMut(&Self::Embedded) -> Result<(), Err> { match &self.annotations().0 { None => (), @@ -95,7 +95,7 @@ pub enum Value { Sequence(Vec), Set(Set), Dictionary(Map), - Embedded(N::D), + Embedded(N::Embedded), } /// The kinds of `Value` from the specification. @@ -905,7 +905,7 @@ impl Value { self.as_embedded().is_some() } - pub fn as_embedded(&self) -> Option<&N::D> { + pub fn as_embedded(&self) -> Option<&N::Embedded> { if let Value::Embedded(d) = self { Some(d) } else { @@ -913,13 +913,13 @@ impl Value { } } - pub fn to_embedded(&self) -> Result<&N::D, Error> { + pub fn to_embedded(&self) -> Result<&N::Embedded, Error> { self.as_embedded().ok_or_else(|| self.expected(ExpectedKind::Embedded)) } pub fn copy_via(&self, f: &mut F) -> Result, Err> where - F: FnMut(&N::D) -> Result, Err> + F: FnMut(&N::Embedded) -> Result, Err> { Ok(match self { Value::Boolean(b) => Value::Boolean(*b), @@ -945,7 +945,7 @@ impl Value { pub fn foreach_embedded(&self, f: &mut F) -> Result<(), Err> where - F: FnMut(&N::D) -> Result<(), Err> + F: FnMut(&N::Embedded) -> Result<(), Err> { match self { Value::Boolean(_) | @@ -1045,7 +1045,7 @@ impl Annotations { pub fn copy_via(&self, f: &mut F) -> Result, Err> where - F: FnMut(&N::D) -> Result, Err> + F: FnMut(&N::Embedded) -> Result, Err> { Ok(match &self.0 { None => @@ -1109,7 +1109,7 @@ impl PlainValue { } impl NestedValue for PlainValue { - type D = D; + type Embedded = D; fn wrap(anns: Annotations, v: Value) -> Self { PlainValue(AnnotatedValue::new(anns, v)) @@ -1147,7 +1147,7 @@ use std::rc::Rc; pub struct RcValue(Rc>>); impl NestedValue for RcValue { - type D = D; + type Embedded = D; fn wrap(anns: Annotations, v: Value) -> Self { RcValue(Rc::new(AnnotatedValue::new(anns, v))) @@ -1185,7 +1185,7 @@ impl Debug for RcValue { pub struct ArcValue(Arc>>); impl NestedValue for ArcValue { - type D = D; + type Embedded = D; fn wrap(anns: Annotations, v: Value) -> Self { ArcValue(Arc::new(AnnotatedValue::new(anns, v))) @@ -1226,7 +1226,7 @@ pub type UnwrappedIOValue = Value; impl Domain for IOValue {} impl NestedValue for IOValue { - type D = Self; + type Embedded = Self; fn wrap(anns: Annotations, v: Value) -> Self { IOValue(Arc::new(AnnotatedValue::new(anns, v))) @@ -1291,7 +1291,7 @@ impl DummyValue { } impl NestedValue for DummyValue { - type D = D; + type Embedded = D; fn wrap(_anns: Annotations, _v: Value) -> Self { DummyValue::new() diff --git a/implementations/rust/preserves/src/value/text/mod.rs b/implementations/rust/preserves/src/value/text/mod.rs index 5ecc258..94921ee 100644 --- a/implementations/rust/preserves/src/value/text/mod.rs +++ b/implementations/rust/preserves/src/value/text/mod.rs @@ -10,7 +10,7 @@ use std::io; use super::{DomainParse, IOValue, IOValueDomainCodec, NestedValue, Reader, ViaCodec}; -pub fn from_str>( +pub fn from_str>( s: &str, decode_embedded: Dec, ) -> io::Result { @@ -21,7 +21,7 @@ pub fn iovalue_from_str(s: &str) -> io::Result { from_str(s, ViaCodec::new(IOValueDomainCodec)) } -pub fn annotated_from_str>( +pub fn annotated_from_str>( s: &str, decode_embedded: Dec, ) -> io::Result { diff --git a/implementations/rust/preserves/src/value/text/reader.rs b/implementations/rust/preserves/src/value/text/reader.rs index fbb1a51..446d3e8 100644 --- a/implementations/rust/preserves/src/value/text/reader.rs +++ b/implementations/rust/preserves/src/value/text/reader.rs @@ -89,14 +89,14 @@ impl<'de, 'src, D: Embeddable, Dec: DomainParse, S: BinarySource<'de>> } // TODO: This is a duplicate of fn expected in PackedReader. - fn expected>(&mut self, k: ExpectedKind) -> Error { + fn expected>(&mut self, k: ExpectedKind) -> Error { match Reader::::demand_next(self, true) { Ok(v) => Error::Expected(k, Received::ReceivedOtherValue(format!("{:?}", v))), Err(e) => e.into() } } - fn gather_annotations>(&mut self) -> ReaderResult> { + fn gather_annotations>(&mut self) -> ReaderResult> { let mut vs = Vec::new(); loop { self.skip_whitespace(); @@ -334,7 +334,7 @@ impl<'de, 'src, D: Embeddable, Dec: DomainParse, S: BinarySource<'de>> } } - fn upto>(&mut self, delimiter: u8, read_annotations: bool) -> io::Result> { + fn upto>(&mut self, delimiter: u8, read_annotations: bool) -> io::Result> { let mut vs = Vec::new(); loop { self.skip_whitespace(); @@ -346,7 +346,7 @@ impl<'de, 'src, D: Embeddable, Dec: DomainParse, S: BinarySource<'de>> } } - fn read_dictionary>(&mut self, read_annotations: bool) -> io::Result { + fn read_dictionary>(&mut self, read_annotations: bool) -> io::Result { let mut d = Map::new(); loop { self.skip_whitespace(); @@ -385,8 +385,8 @@ impl<'de, 'src, D: Embeddable, Dec: DomainParse, S: BinarySource<'de>> } } -impl<'de, 'src, N: NestedValue, Dec: DomainParse, S: BinarySource<'de>> - Reader<'de, N> for TextReader<'de, 'src, N::D, Dec, S> +impl<'de, 'src, N: NestedValue, Dec: DomainParse, S: BinarySource<'de>> + Reader<'de, N> for TextReader<'de, 'src, N::Embedded, Dec, S> { fn next(&mut self, read_annotations: bool) -> io::Result> { self.skip_whitespace(); diff --git a/implementations/rust/preserves/src/value/text/writer.rs b/implementations/rust/preserves/src/value/text/writer.rs index 06cc779..a1d2217 100644 --- a/implementations/rust/preserves/src/value/text/writer.rs +++ b/implementations/rust/preserves/src/value/text/writer.rs @@ -34,7 +34,7 @@ impl std::default::Default for CommaStyle { } impl TextWriter<&mut Vec> { - pub fn encode>( + pub fn encode>( enc: &mut Enc, v: &N, ) -> io::Result { diff --git a/implementations/rust/preserves/src/value/writer.rs b/implementations/rust/preserves/src/value/writer.rs index 9fc37f1..bbd222e 100644 --- a/implementations/rust/preserves/src/value/writer.rs +++ b/implementations/rust/preserves/src/value/writer.rs @@ -58,7 +58,7 @@ pub trait Writer: Sized { //--------------------------------------------------------------------------- - fn write>( + fn write>( &mut self, enc: &mut Enc, v: &N, @@ -86,7 +86,7 @@ pub trait Writer: Sized { Ok(()) } - fn write_value>( + fn write_value>( &mut self, enc: &mut Enc, v: &Value,