mirror of
https://github.com/ppy/osu.git
synced 2025-03-28 03:07:19 +08:00
Merge pull request #7638 from huoyaoyuan/type-switch
Use type switch in SerializationWriter
This commit is contained in:
commit
01cf417569
@ -130,91 +130,91 @@ namespace osu.Game.IO.Legacy
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
switch (obj.GetType().Name)
|
switch (obj)
|
||||||
{
|
{
|
||||||
case "Boolean":
|
case bool boolObj:
|
||||||
Write((byte)ObjType.boolType);
|
Write((byte)ObjType.boolType);
|
||||||
Write((bool)obj);
|
Write(boolObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "Byte":
|
case byte byteObj:
|
||||||
Write((byte)ObjType.byteType);
|
Write((byte)ObjType.byteType);
|
||||||
Write((byte)obj);
|
Write(byteObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "UInt16":
|
case ushort ushortObj:
|
||||||
Write((byte)ObjType.uint16Type);
|
Write((byte)ObjType.uint16Type);
|
||||||
Write((ushort)obj);
|
Write(ushortObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "UInt32":
|
case uint uintObj:
|
||||||
Write((byte)ObjType.uint32Type);
|
Write((byte)ObjType.uint32Type);
|
||||||
Write((uint)obj);
|
Write(uintObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "UInt64":
|
case ulong ulongObj:
|
||||||
Write((byte)ObjType.uint64Type);
|
Write((byte)ObjType.uint64Type);
|
||||||
Write((ulong)obj);
|
Write(ulongObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "SByte":
|
case sbyte sbyteObj:
|
||||||
Write((byte)ObjType.sbyteType);
|
Write((byte)ObjType.sbyteType);
|
||||||
Write((sbyte)obj);
|
Write(sbyteObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "Int16":
|
case short shortObj:
|
||||||
Write((byte)ObjType.int16Type);
|
Write((byte)ObjType.int16Type);
|
||||||
Write((short)obj);
|
Write(shortObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "Int32":
|
case int intObj:
|
||||||
Write((byte)ObjType.int32Type);
|
Write((byte)ObjType.int32Type);
|
||||||
Write((int)obj);
|
Write(intObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "Int64":
|
case long longObj:
|
||||||
Write((byte)ObjType.int64Type);
|
Write((byte)ObjType.int64Type);
|
||||||
Write((long)obj);
|
Write(longObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "Char":
|
case char charObj:
|
||||||
Write((byte)ObjType.charType);
|
Write((byte)ObjType.charType);
|
||||||
base.Write((char)obj);
|
base.Write(charObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "String":
|
case string stringObj:
|
||||||
Write((byte)ObjType.stringType);
|
Write((byte)ObjType.stringType);
|
||||||
base.Write((string)obj);
|
base.Write(stringObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "Single":
|
case float floatObj:
|
||||||
Write((byte)ObjType.singleType);
|
Write((byte)ObjType.singleType);
|
||||||
Write((float)obj);
|
Write(floatObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "Double":
|
case double doubleObj:
|
||||||
Write((byte)ObjType.doubleType);
|
Write((byte)ObjType.doubleType);
|
||||||
Write((double)obj);
|
Write(doubleObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "Decimal":
|
case decimal decimalObj:
|
||||||
Write((byte)ObjType.decimalType);
|
Write((byte)ObjType.decimalType);
|
||||||
Write((decimal)obj);
|
Write(decimalObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "DateTime":
|
case DateTime dateTimeObj:
|
||||||
Write((byte)ObjType.dateTimeType);
|
Write((byte)ObjType.dateTimeType);
|
||||||
Write((DateTime)obj);
|
Write(dateTimeObj);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "Byte[]":
|
case byte[] byteArray:
|
||||||
Write((byte)ObjType.byteArrayType);
|
Write((byte)ObjType.byteArrayType);
|
||||||
base.Write((byte[])obj);
|
base.Write(byteArray);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "Char[]":
|
case char[] charArray:
|
||||||
Write((byte)ObjType.charArrayType);
|
Write((byte)ObjType.charArrayType);
|
||||||
base.Write((char[])obj);
|
base.Write(charArray);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user