Index: third_party/protobuf/csharp/src/Google.Protobuf/Compatibility/TypeExtensions.cs |
diff --git a/third_party/protobuf/csharp/src/Google.Protobuf/Compatibility/TypeExtensions.cs b/third_party/protobuf/csharp/src/Google.Protobuf/Compatibility/TypeExtensions.cs |
index 2d93183b0681b3177700228e48044bab800d8cc3..762a29eb0a3018d8f5d8eb37f83a50326c34d3bf 100644 |
--- a/third_party/protobuf/csharp/src/Google.Protobuf/Compatibility/TypeExtensions.cs |
+++ b/third_party/protobuf/csharp/src/Google.Protobuf/Compatibility/TypeExtensions.cs |
@@ -33,7 +33,6 @@ |
using System; |
using System.Reflection; |
-#if !DOTNET35 |
namespace Google.Protobuf.Compatibility |
{ |
/// <summary> |
@@ -47,6 +46,15 @@ namespace Google.Protobuf.Compatibility |
internal static class TypeExtensions |
{ |
/// <summary> |
+ /// Returns true if the target type is a value type, including a nullable value type or an enum, or false |
+ /// if it's a reference type (class, delegate, interface - including System.ValueType and System.Enum). |
+ /// </summary> |
+ internal static bool IsValueType(this Type target) |
+ { |
+ return target.GetTypeInfo().IsValueType; |
+ } |
+ |
+ /// <summary> |
/// See https://msdn.microsoft.com/en-us/library/system.type.isassignablefrom |
/// </summary> |
internal static bool IsAssignableFrom(this Type target, Type c) |
@@ -103,4 +111,3 @@ namespace Google.Protobuf.Compatibility |
} |
} |
} |
-#endif |