AK.F1.Timing.Serialization.DecoratedObjectWriter.WritePrimitive C# (CSharp) Method

WritePrimitive() private method

private WritePrimitive ( GraphContext &context ) : void
context GraphContext
return void
        private void WritePrimitive(ref GraphContext context)
        {
            switch(context.TypeCode)
            {
                case ObjectTypeCode.Empty:
                    WriteEmpty();
                    break;
                case ObjectTypeCode.DBNull:
                    WriteDBNull();
                    break;
                case ObjectTypeCode.Object:
                    Guard.Fail("WritePrimitive should not have been called for an Object.");
                    break;
                case ObjectTypeCode.Boolean:
                    WriteBoolean((bool)context.Graph);
                    break;
                case ObjectTypeCode.Char:
                    WriteChar((char)context.Graph);
                    break;
                case ObjectTypeCode.SByte:
                    WriteSByte((sbyte)context.Graph);
                    break;
                case ObjectTypeCode.Byte:
                    WriteByte((byte)context.Graph);
                    break;
                case ObjectTypeCode.Int16:
                    WriteInt16((short)context.Graph);
                    break;
                case ObjectTypeCode.Int32:
                    WriteInt32((int)context.Graph);
                    break;
                case ObjectTypeCode.Int64:
                    WriteInt64((long)context.Graph);
                    break;
                case ObjectTypeCode.UInt16:
                    WriteUInt16((ushort)context.Graph);
                    break;
                case ObjectTypeCode.UInt32:
                    WriteUInt32((uint)context.Graph);
                    break;
                case ObjectTypeCode.UInt64:
                    WriteUInt64((ulong)context.Graph);
                    break;
                case ObjectTypeCode.Single:
                    WriteSingle((float)context.Graph);
                    break;
                case ObjectTypeCode.Double:
                    WriteDouble((double)context.Graph);
                    break;
                case ObjectTypeCode.Decimal:
                    WriteDecimal((decimal)context.Graph);
                    break;
                case ObjectTypeCode.DateTime:
                    WriteDateTime((DateTime)context.Graph);
                    break;
                case ObjectTypeCode.String:
                    WriteString((string)context.Graph);
                    break;
                case ObjectTypeCode.TimeSpan:
                    WriteTimeSpan((TimeSpan)context.Graph);
                    break;
                default:
                    throw Guard.ArgumentOutOfRange("context.ObjectTypeCode");
            }
        }