Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ WriteCompressedSignedInteger() [1/2]

static void System.Reflection.Metadata.BlobWriterImpl.WriteCompressedSignedInteger ( BlobBuilder writer,
int value )
inlinestaticpackage

Definition at line 92 of file BlobWriterImpl.cs.

93 {
94 int num = value >> 31;
95 if ((value & -64) == (num & -64))
96 {
97 int num2 = ((value & 0x3F) << 1) | (num & 1);
98 writer.WriteByte((byte)num2);
99 }
100 else if ((value & -8192) == (num & -8192))
101 {
102 int num3 = ((value & 0x1FFF) << 1) | (num & 1);
103 writer.WriteUInt16BE((ushort)(0x8000u | (uint)num3));
104 }
105 else if ((value & -268435456) == (num & -268435456))
106 {
107 int num4 = ((value & 0xFFFFFFF) << 1) | (num & 1);
108 writer.WriteUInt32BE(0xC0000000u | (uint)num4);
109 }
110 else
111 {
112 Throw.ValueArgumentOutOfRange();
113 }
114 }

References System.value, System.Reflection.Throw.ValueArgumentOutOfRange(), and System.writer.