public static void Encode <T1, T2, T3>(ref SliceWriter writer, [NotNull] IOrderedTypeCodec <T1> codec1, T1 value1, [NotNull] IOrderedTypeCodec <T2> codec2, T2 value2, [NotNull] IOrderedTypeCodec <T3> codec3, T3 value3) { Contract.Assert(codec1 != null && codec2 != null && codec3 != null); codec1.EncodeOrderedSelfTerm(ref writer, value1); codec2.EncodeOrderedSelfTerm(ref writer, value2); codec3.EncodeOrderedSelfTerm(ref writer, value3); }
public static IKeyEncoder <T> Bind <T>([NotNull] IOrderedTypeCodec <T> codec) { if (codec == null) { throw new ArgumentNullException("codec"); } return(new OrderedKeyEncoder <T>(codec)); }
public static ICompositeKeyEncoder <T1, T2> Bind <T1, T2>([NotNull] IOrderedTypeCodec <T1> codec1, [NotNull] IOrderedTypeCodec <T2> codec2) { if (codec1 == null) { throw new ArgumentNullException("codec1"); } if (codec2 == null) { throw new ArgumentNullException("codec2"); } return(new CodecCompositeKeyEncoder <T1, T2>(codec1, codec2)); }
public static void Partial <T1>(ref SliceWriter writer, IOrderedTypeCodec <T1> codec1, T1 value1) { Contract.Assert(codec1 != null); codec1.EncodeOrderedSelfTerm(ref writer, value1); }
public CodecCompositeKeyEncoder(IOrderedTypeCodec <T1> codec1, IOrderedTypeCodec <T2> codec2) { m_codec1 = codec1; m_codec2 = codec2; }
public OrderedKeyEncoder(IOrderedTypeCodec <T> codec) { Contract.Requires(codec != null); m_codec = codec; }