From 6716432ca60b1ad53b20165d9bc29f853fcf1deb Mon Sep 17 00:00:00 2001 From: csharptest Date: Sun, 14 Oct 2012 18:47:48 -0500 Subject: Last (hopefully) changes to pre-processing directives --- src/ProtocolBuffers/FrameworkPortability.cs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'src/ProtocolBuffers/FrameworkPortability.cs') diff --git a/src/ProtocolBuffers/FrameworkPortability.cs b/src/ProtocolBuffers/FrameworkPortability.cs index 78b7db31..fee8fbac 100644 --- a/src/ProtocolBuffers/FrameworkPortability.cs +++ b/src/ProtocolBuffers/FrameworkPortability.cs @@ -63,6 +63,28 @@ namespace Google.ProtocolBuffers get { return CultureInfo.InvariantCulture; } } + internal static double Int64ToDouble(long value) + { +#if CLIENTPROFILE + return BitConverter.Int64BitsToDouble(value); +#else + double[] arresult = new double[1]; + Buffer.BlockCopy(new[] { value }, 0, arresult, 0, 8); + return arresult[0]; +#endif + } + + internal static long DoubleToInt64(double value) + { +#if CLIENTPROFILE + return BitConverter.DoubleToInt64Bits(value); +#else + long[] arresult = new long[1]; + Buffer.BlockCopy(new[] { value }, 0, arresult, 0, 8); + return arresult[0]; +#endif + } + internal static bool TryParseInt32(string text, out int number) { return TryParseInt32(text, NumberStyles.Any, InvariantCulture, out number); -- cgit v1.2.3