summaryrefslogtreecommitdiff
path: root/src/mscorlib/src/System/ArgumentNullException.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/mscorlib/src/System/ArgumentNullException.cs')
-rw-r--r--src/mscorlib/src/System/ArgumentNullException.cs55
1 files changed, 55 insertions, 0 deletions
diff --git a/src/mscorlib/src/System/ArgumentNullException.cs b/src/mscorlib/src/System/ArgumentNullException.cs
new file mode 100644
index 0000000000..4bcb537b81
--- /dev/null
+++ b/src/mscorlib/src/System/ArgumentNullException.cs
@@ -0,0 +1,55 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// See the LICENSE file in the project root for more information.
+
+/*=============================================================================
+**
+**
+**
+** Purpose: Exception class for null arguments to a method.
+**
+**
+=============================================================================*/
+
+namespace System {
+
+ using System;
+ using System.Runtime.Serialization;
+ using System.Runtime.Remoting;
+ using System.Security.Permissions;
+
+ // The ArgumentException is thrown when an argument
+ // is null when it shouldn't be.
+ //
+ [System.Runtime.InteropServices.ComVisible(true)]
+ [Serializable]
+ public class ArgumentNullException : ArgumentException
+ {
+ // Creates a new ArgumentNullException with its message
+ // string set to a default message explaining an argument was null.
+ public ArgumentNullException()
+ : base(Environment.GetResourceString("ArgumentNull_Generic")) {
+ // Use E_POINTER - COM used that for null pointers. Description is "invalid pointer"
+ SetErrorCode(__HResults.E_POINTER);
+ }
+
+ public ArgumentNullException(String paramName)
+ : base(Environment.GetResourceString("ArgumentNull_Generic"), paramName) {
+ SetErrorCode(__HResults.E_POINTER);
+ }
+
+ public ArgumentNullException(String message, Exception innerException)
+ : base(message, innerException) {
+ SetErrorCode(__HResults.E_POINTER);
+ }
+
+ public ArgumentNullException(String paramName, String message)
+ : base(message, paramName) {
+ SetErrorCode(__HResults.E_POINTER);
+ }
+
+ [System.Security.SecurityCritical] // auto-generated_required
+ protected ArgumentNullException(SerializationInfo info, StreamingContext context) : base(info, context) {
+ }
+ }
+}