/// <inheritdoc /> protected sealed override TEnumerable DeserializeValues(int countOfValues, IBufferedArray buffer) { TEnumerable result = this.Create(countOfValues); this.DeserializeValuesInline(countOfValues, buffer, result); return(result); }
public static ulong NextULong(this IBufferedArray buffer, IByteConverter converter) { SharedContracts(buffer, converter); buffer.BufferNextExceptionChecking(ByteLength.ULong); return(converter.ToULong(buffer.Buffer, 0)); }
public static decimal NextDecimal(this IBufferedArray buffer, IByteConverter converter) { SharedContracts(buffer, converter); buffer.BufferNextExceptionChecking(ByteLength.Decimal); return(converter.ToDecimal(buffer.Buffer, 0)); }
/// <inheritdoc /> public void DeserializeInline( IBufferedArray buffer, VoxelGridChunkResources result) { IInlineDeserializerContracts.DeserializeInline(buffer, result); this.serializer.DeserializeInline(buffer, result.Voxels); }
/// <inheritdoc /> public void DeserializeInline( IBufferedArray buffer, SkyIslandMapChunkResources result) { IInlineDeserializerContracts.DeserializeInline(buffer, result); this.serializer.DeserializeInline(buffer, result.Maps); }
public static int NextInt(this IBufferedArray buffer, IByteConverter converter) { SharedContracts(buffer, converter); buffer.BufferNextExceptionChecking(ByteLength.Int); return(converter.ToInt(buffer.Buffer, 0)); }
public static sbyte NextSByte(this IBufferedArray buffer, IByteConverter converter) { SharedContracts(buffer, converter); buffer.BufferNextExceptionChecking(ByteLength.SByte); return(converter.ToSByte(buffer.Buffer, 0)); }
public static char NextChar(this IBufferedArray buffer, IByteConverter converter) { SharedContracts(buffer, converter); buffer.BufferNextExceptionChecking(ByteLength.Char); return(converter.ToChar(buffer.Buffer, 0)); }
/// <inheritdoc /> protected override void DeserializeValuesInline( int countOfValues, IBufferedArray buffer, ICollection <T> result) { for (int count = 0; count < countOfValues; count++) { result.Add(this.ValueSerializer.Deserialize(buffer)); } }
/// <inheritdoc /> protected override void DeserializeValues( Index3D lowerBounds, Index3D dimensions, IBufferedArray buffer, TIndexable result) { foreach (var resultIndex in Index.Range(lowerBounds, dimensions)) { result[resultIndex] = this.ValueSerializer.Deserialize(buffer); } }
/// <inheritdoc /> public TValue Deserialize(IBufferedArray buffer) { IDeserializerContracts.Deserialize(buffer); TKey key = this.keySerializer.Deserialize(buffer); return(this.serializers[key].Deserialize(buffer)); }
/// <inheritdoc /> public TValue Deserialize(IBufferedArray buffer) { IDeserializerContracts.Deserialize(buffer); T part = this.serialzier.Deserialize(buffer); return(this.ComposeValue(part)); }
/// <inheritdoc /> protected sealed override TIndexable DeserializeValues( TIndex lowerBounds, TIndex dimensions, IBufferedArray buffer) { TIndexable result = this.Create(dimensions); this.DeserializeValues(lowerBounds, dimensions, buffer, result); return(result); }
/// <inheritdoc /> public TIndexable Deserialize(IBufferedArray buffer) { IDeserializerContracts.Deserialize(buffer); TIndex lowerBounds = this.LowerBoundsSerializer.Deserialize(buffer); TIndex dimensions = this.DimensionsSerializer.Deserialize(buffer); return(this.DeserializeValues(lowerBounds, dimensions, buffer)); }
public static bool TryBufferNext(this IBufferedArray buffer, int count) { Contracts.Requires.That(buffer != null); Contracts.Requires.That(count >= 0); int countBuffered = buffer.BufferNext(count); return(countBuffered == count); }
/// <inheritdoc /> public TValue Deserialize(IBufferedArray buffer) { IDeserializerContracts.Deserialize(buffer); T1 part1 = this.serialzierT1.Deserialize(buffer); T2 part2 = this.serialzierT2.Deserialize(buffer); return(this.ComposeValue(part1, part2)); }
/// <inheritdoc /> public void DeserializeInline(IBufferedArray buffer, TIndexable result) { IInlineDeserializerContracts.DeserializeInline(buffer, result); TIndex lowerBounds = this.LowerBoundsSerializer.Deserialize(buffer); TIndex dimensions = this.DimensionsSerializer.Deserialize(buffer); this.DeserializeValues(lowerBounds, dimensions, buffer, result); }
/// <inheritdoc /> public int Deserialize(IBufferedArray buffer) { IDeserializerContracts.Deserialize(buffer); Contracts.Requires.That(buffer.TotalRemainingLength.HasValue); Contracts.Requires.That(buffer.TotalRemainingLength.Value.IsDivisibleBy( this.enumerableValue.SerializedLength)); return(buffer.TotalRemainingLength.Value / this.enumerableValue.SerializedLength); }
/// <inheritdoc /> protected override string DeserializeValues(int countOfValues, IBufferedArray buffer) { char[] chars = new char[countOfValues]; for (int count = 0; count < countOfValues; count++) { chars[count] = this.ValueSerializer.Deserialize(buffer); } return(new string(chars)); }
private static void BufferNextExceptionChecking(this IBufferedArray buffer, int count) { Contracts.Requires.That(buffer != null); Contracts.Requires.That(count >= 0); if (!buffer.TryBufferNext(count)) { throw new EndOfStreamException("End of buffered source reached."); } }
/// <inheritdoc /> public TValue Deserialize(IBufferedArray buffer) { IDeserializerContracts.Deserialize(buffer); T1 part1 = this.serialzierT1.Deserialize(buffer); T2 part2 = this.serialzierT2.Deserialize(buffer); T3 part3 = this.serialzierT3.Deserialize(buffer); T4 part4 = this.serialzierT4.Deserialize(buffer); T5 part5 = this.serialzierT5.Deserialize(buffer); return(this.ComposeValue(part1, part2, part3, part4, part5)); }
public static T[] DeserializeValues <T>( IDeserializer <T> deserializer, int count, IBufferedArray buffer) { Contracts.Requires.That(deserializer != null); Contracts.Requires.That(count >= 0); Contracts.Requires.That(buffer != null); var result = new T[count]; DeserializeValuesInline(deserializer, count, buffer, result); return(result); }
public static void DeserializeValuesInline <T>( IDeserializer <T> deserializer, int count, IBufferedArray buffer, T[] result) { Contracts.Requires.That(deserializer != null); Contracts.Requires.That(count >= 0); Contracts.Requires.That(buffer != null); Contracts.Requires.That(result != null); for (int currentCount = 0; currentCount < count; currentCount++) { result[currentCount] = deserializer.Deserialize(buffer); } }
public static bool TryNextDecimal(this IBufferedArray buffer, IByteConverter converter, out decimal value) { SharedContracts(buffer, converter); if (buffer.TryBufferNext(ByteLength.Decimal)) { value = converter.ToDecimal(buffer.Buffer, 0); return(true); } else { value = default(decimal); return(false); } }
public static bool TryNextFloat(this IBufferedArray buffer, IByteConverter converter, out float value) { SharedContracts(buffer, converter); if (buffer.TryBufferNext(ByteLength.Float)) { value = converter.ToFloat(buffer.Buffer, 0); return(true); } else { value = default(float); return(false); } }
public static bool TryNextChar(this IBufferedArray buffer, IByteConverter converter, out char value) { SharedContracts(buffer, converter); if (buffer.TryBufferNext(ByteLength.Char)) { value = converter.ToChar(buffer.Buffer, 0); return(true); } else { value = default(char); return(false); } }
public static bool TryNextSByte(this IBufferedArray buffer, IByteConverter converter, out sbyte value) { SharedContracts(buffer, converter); if (buffer.TryBufferNext(ByteLength.SByte)) { value = converter.ToSByte(buffer.Buffer, 0); return(true); } else { value = default(sbyte); return(false); } }
public static bool TryNextULong(this IBufferedArray buffer, IByteConverter converter, out ulong value) { SharedContracts(buffer, converter); if (buffer.TryBufferNext(ByteLength.ULong)) { value = converter.ToULong(buffer.Buffer, 0); return(true); } else { value = default(ulong); return(false); } }
private static void SharedContracts(IBufferedArray buffer, IByteConverter converter) { Contracts.Requires.That(buffer != null); Contracts.Requires.That(converter != null); }
/// <inheritdoc /> protected override void DeserializeValuesInline(int countOfValues, IBufferedArray buffer, T[] result) => DeserializeArray.DeserializeValuesInline(this.ValueSerializer, countOfValues, buffer, result);