The boolean type currently has only one extension method.
namespace ExtensionCord
{
using System.Runtime.CompilerServices;
public static class BoolExt
{
Implication is a standard logical operation which is missing from practically all mainstream languages. So, we need to define it ourselves. The implication operator is defined mathematically as:
A \implies B \equiv \neg A \lor B.
Since this is a very simple expression replacement, we'll try to make the compiler in-line it aggressively.
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static bool Implies(this bool antecedent, bool consequent) =>
!antecedent || consequent;
}
}