public static void IfNotCastable([CanBeNull][NoEnumeration] object value, [NotNull][System.Diagnostics.CodeAnalysis.NotNull] Type expectedType, Violation message) { Fail.RequiresType(expectedType); if (value == null) { return; } if (expectedType.IsInstanceOfType(value) == false) { throw Fail.Because(message); } }
public static void IfNotCastable([CanBeNull][NoEnumeration] object value, [NotNull] Type expectedType, [NotNull] string message, [NotNull] params object[] args) { Fail.RequiresType(expectedType); Fail.RequiresMessage(message, args); if (value == null) { return; } if (expectedType.IsInstanceOfType(value) == false) { throw Fail.Because(message, args); } }