summaryrefslogtreecommitdiff
path: root/src/mscorlib/Common/NotImplemented.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/mscorlib/Common/NotImplemented.cs')
-rw-r--r--src/mscorlib/Common/NotImplemented.cs34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/mscorlib/Common/NotImplemented.cs b/src/mscorlib/Common/NotImplemented.cs
new file mode 100644
index 0000000000..82f4e18ddc
--- /dev/null
+++ b/src/mscorlib/Common/NotImplemented.cs
@@ -0,0 +1,34 @@
+// 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.
+
+namespace System
+{
+ //
+ // This simple class enables one to throw a NotImplementedException using the following
+ // idiom:
+ //
+ // throw NotImplemented.ByDesign;
+ //
+ // Used by methods whose intended implementation is to throw a NotImplementedException (typically
+ // virtual methods in public abstract classes that intended to be subclassed by third parties.)
+ //
+ // This makes it distinguishable both from human eyes and CCI from NYI's that truly represent undone work.
+ //
+ internal static class NotImplemented
+ {
+ internal static Exception ByDesign
+ {
+ get
+ {
+ return new NotImplementedException();
+ }
+ }
+
+ internal static Exception ByDesignWithMessage(string message)
+ {
+ return new NotImplementedException(message);
+ }
+ }
+}
+