Xamarin Public Jenkins (auto-signing) ef583813eb Imported Upstream version 6.4.0.137
Former-commit-id: 943baa9f16a098c33e129777827f3a9d20da00d6
2019-07-26 19:53:28 +00:00

38 lines
524 B
C#

namespace System
{
partial struct Nullable<T>
{
//
// These are called by the JIT
//
//
// JIT implementation of box valuetype System.Nullable`1<T>
//
static object? Box (T? o)
{
if (!o.hasValue)
return null;
return o.value;
}
static T? Unbox (object o)
{
if (o == null)
return null;
return (T) o;
}
static T? UnboxExact (object o)
{
if (o == null)
return null;
if (o.GetType() != typeof (T))
throw new InvalidCastException();
return (T) o;
}
}
}