42 lines
813 B
C#
42 lines
813 B
C#
using System.Runtime.InteropServices;
|
|
|
|
namespace FishNet.Serializing.Helping
|
|
{
|
|
|
|
|
|
// -- helpers for float conversion without allocations --
|
|
[StructLayout(LayoutKind.Explicit)]
|
|
internal struct UIntFloat
|
|
{
|
|
[FieldOffset(0)]
|
|
public float FloatValue;
|
|
|
|
[FieldOffset(0)]
|
|
public uint UIntValue;
|
|
}
|
|
|
|
[StructLayout(LayoutKind.Explicit)]
|
|
internal struct UIntDouble
|
|
{
|
|
[FieldOffset(0)]
|
|
public double DoubleValue;
|
|
|
|
[FieldOffset(0)]
|
|
public ulong LongValue;
|
|
}
|
|
|
|
[StructLayout(LayoutKind.Explicit)]
|
|
internal struct UIntDecimal
|
|
{
|
|
[FieldOffset(0)]
|
|
public ulong LongValue1;
|
|
|
|
[FieldOffset(8)]
|
|
public ulong LongValue2;
|
|
|
|
[FieldOffset(0)]
|
|
public decimal DecimalValue;
|
|
}
|
|
|
|
}
|