public void Serializer(Stream stream, IMessageSerializer serializeHelper) { var len = new UnsignedInt((uint)Value.Length); len.Serializer(stream, serializeHelper); stream.Write(Value, 0, Value.Length); }
public void Serializer(Stream stream, IMessageSerializer serializeHelper) { var buf = Hex.HexToBytes(Value); var len = new UnsignedInt((uint)buf.Length); len.Serializer(stream, serializeHelper); stream.Write(buf, 0, buf.Length); }
private List <Expression> ToExpressions(UnsignedInt element) { if (element == null || !element.Value.HasValue) { return(null); } return(ListOf(new NumberValue(element.Value.Value))); }
public void Can_ConvertElement_R3_UnsignedInt_To_R4_UnsignedInt() { var value = 0; var r3TypeInstance = new UnsignedInt(value); var r4TypeInstance = new FhirConverter(FhirVersion.R4, FhirVersion.R3) .Convert <UnsignedInt, UnsignedInt>(r3TypeInstance); Assert.NotNull(r4TypeInstance); Assert.Equal(value, r4TypeInstance.Value); }
public void ReadJson(JsonReader reader, JsonSerializer serializer) { var value = serializer.Deserialize <string>(reader); if (string.IsNullOrEmpty(value)) { return; } var args = value.Split('.'); SpaceId = byte.Parse(args[0]); TypeId = byte.Parse(args[1]); Instance = uint.Parse(args[2]); }
public void TestIntegerValueInterface() { INullableIntegerValue iv = new Integer(null); Assert.IsNotNull(iv); iv.Value = 12345; Assert.AreEqual(iv.Value, 12345); iv = new UnsignedInt(0); Assert.IsNotNull(iv); iv.Value = 12345; Assert.AreEqual(iv.Value, 12345); iv = new PositiveInt(1); Assert.IsNotNull(iv); iv.Value = 12345; Assert.AreEqual(iv.Value, 12345); }
public ObjectId(byte spaceId, byte typeId, uint instance) { SpaceId = spaceId; TypeId = typeId; Instance = instance; }
public virtual void AddToMessageStream(Stream stream, Type type, object val) { switch (val) { case bool typed: { stream.WriteByte((byte)(typed ? 1 : 0)); return; } case byte typed: { stream.WriteByte(typed); return; } case short typed: { var buf = BitConverter.GetBytes(typed); stream.Write(buf, 0, buf.Length); return; } case ushort typed: { var buf = BitConverter.GetBytes(typed); stream.Write(buf, 0, buf.Length); return; } case int typed: { var buf = BitConverter.GetBytes(typed); stream.Write(buf, 0, buf.Length); return; } case uint typed: { var buf = BitConverter.GetBytes(typed); stream.Write(buf, 0, buf.Length); return; } case long typed: { var buf = BitConverter.GetBytes(typed); stream.Write(buf, 0, buf.Length); return; } case ulong typed: { var buf = BitConverter.GetBytes(typed); stream.Write(buf, 0, buf.Length); return; } case float typed: { var buf = BitConverter.GetBytes(typed); stream.Write(buf, 0, buf.Length); return; } case double typed: { var buf = BitConverter.GetBytes(typed); stream.Write(buf, 0, buf.Length); return; } case byte[] typed: { stream.Write(typed, 0, typed.Length); return; } case string typed: { if (string.IsNullOrEmpty(typed)) { stream.WriteByte(0); return; } var buf = Encoding.UTF8.GetBytes(typed); var buflen = new UnsignedInt((uint)buf.Length); buflen.Serializer(stream, this); stream.Write(buf, 0, buf.Length); return; } case ICustomSerializer typed: { typed.Serializer(stream, this); return; } default: { if (type.IsEnum) { stream.WriteByte((byte)val); return; } if (type.IsArray) { var typed = (ICollection)val; if (typed == null) { return; } var buf = new UnsignedInt((uint)typed.Count); buf.Serializer(stream, this); foreach (var value in typed) { AddToMessageStream(stream, value.GetType(), value); } return; } if (type.IsClass) { var chType = val.GetType(); var properties = GetPropertiesForMessage(chType); foreach (var prop in properties) { AddToMessageStream(stream, prop, val); } return; } throw new NotImplementedException(); } } }
private static List <Expression> ToExpressions(UnsignedInt element) => element?.Value == null ? null : ListOf(new NumberValue(element.Value.Value));