From 6eadf12f9615cf81c23bdb4747ab51a752ecc9fd Mon Sep 17 00:00:00 2001 From: Steven Kirk Date: Sun, 29 Nov 2015 11:22:30 +0100 Subject: [PATCH] Add ContractAnnotation to Contract.Requires. To tell resharper that an exception will be thrown when condition == false. --- src/Perspex.Base/Contract.cs | 5 +++-- src/Perspex.Base/packages.config | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Perspex.Base/Contract.cs b/src/Perspex.Base/Contract.cs index 95e2976474..ffc47a2123 100644 --- a/src/Perspex.Base/Contract.cs +++ b/src/Perspex.Base/Contract.cs @@ -1,12 +1,12 @@ // Copyright (c) The Perspex Project. All rights reserved. // Licensed under the MIT license. See licence.md file in the project root for full license information. +using System; using System.Runtime.CompilerServices; +using JetBrains.Annotations; namespace Perspex { - using System; - /// /// A stub of Code Contract's Contract class. /// @@ -25,6 +25,7 @@ namespace Perspex /// /// The precondition. [MethodImpl(MethodImplOptions.AggressiveInlining)] + [ContractAnnotation("condition:false=>stop")] public static void Requires(bool condition) where TException : Exception, new() { if (!condition) diff --git a/src/Perspex.Base/packages.config b/src/Perspex.Base/packages.config index 7d2a813bf7..26d3282b7a 100644 --- a/src/Perspex.Base/packages.config +++ b/src/Perspex.Base/packages.config @@ -1,5 +1,6 @@  +