diff options
Diffstat (limited to 'src/mscorlib/src/System/Runtime/InteropServices/MarshalDirectiveException.cs')
-rw-r--r-- | src/mscorlib/src/System/Runtime/InteropServices/MarshalDirectiveException.cs | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/mscorlib/src/System/Runtime/InteropServices/MarshalDirectiveException.cs b/src/mscorlib/src/System/Runtime/InteropServices/MarshalDirectiveException.cs new file mode 100644 index 0000000000..076307feb8 --- /dev/null +++ b/src/mscorlib/src/System/Runtime/InteropServices/MarshalDirectiveException.cs @@ -0,0 +1,39 @@ +// Copyright (c) Microsoft. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +/*============================================================================= +** +** +** Purpose: This exception is thrown when the marshaller encounters a signature +** that has an invalid MarshalAs CA for a given argument or is not +** supported. +** +=============================================================================*/ + +namespace System.Runtime.InteropServices { + + using System; + using System.Runtime.Serialization; + +[System.Runtime.InteropServices.ComVisible(true)] + [Serializable] + public class MarshalDirectiveException : SystemException { + public MarshalDirectiveException() + : base(Environment.GetResourceString("Arg_MarshalDirectiveException")) { + SetErrorCode(__HResults.COR_E_MARSHALDIRECTIVE); + } + + public MarshalDirectiveException(String message) + : base(message) { + SetErrorCode(__HResults.COR_E_MARSHALDIRECTIVE); + } + + public MarshalDirectiveException(String message, Exception inner) + : base(message, inner) { + SetErrorCode(__HResults.COR_E_MARSHALDIRECTIVE); + } + + protected MarshalDirectiveException(SerializationInfo info, StreamingContext context) : base(info, context) { + } + } +} |