#### [Abblix\.Utils](https://www.abblix.com/en/docs/api/abblix-utils 'index')
### [Abblix\.Utils](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils 'Abblix\.Utils')

## EnumFlagExtensions Class

Extension methods for `[Flags]` enum values that complement the BCL surface\.
Named with the `Flag` qualifier so it does not collide with the very common
`EnumExtensions` class name used by other libraries \(e\.g\. `Fido2NetLib.EnumExtensions`\),
which would surface as `CS0104` in any consumer that imports both namespaces\.

```csharp
public static class EnumFlagExtensions
```

Inheritance [System\.Object](https://learn.microsoft.com/en-us/dotnet/api/system.object 'System\.Object') → EnumFlagExtensions
### Methods

## EnumFlagExtensions\.HasAnyFlag\<T\>\(this T, T\) Method {#Abblix.Utils.EnumFlagExtensions.HasAnyFlag_T_(thisT,T)}

Returns `true` when at least one flag in [mask](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.EnumFlagExtensions#Abblix.Utils.EnumFlagExtensions.HasAnyFlag_T_(thisT,T).mask 'Abblix\.Utils\.EnumFlagExtensions\.HasAnyFlag\<T\>\(this T, T\)\.mask') is set in
[value](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.EnumFlagExtensions#Abblix.Utils.EnumFlagExtensions.HasAnyFlag_T_(thisT,T).value 'Abblix\.Utils\.EnumFlagExtensions\.HasAnyFlag\<T\>\(this T, T\)\.value')\. The OR\-counterpart to [System\.Enum\.HasFlag\(System\.Enum\)](https://learn.microsoft.com/en-us/dotnet/api/system.enum.hasflag#system-enum-hasflag(system-enum) 'System\.Enum\.HasFlag\(System\.Enum\)'):
`HasFlag(mask)` requires every bit of [mask](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.EnumFlagExtensions#Abblix.Utils.EnumFlagExtensions.HasAnyFlag_T_(thisT,T).mask 'Abblix\.Utils\.EnumFlagExtensions\.HasAnyFlag\<T\>\(this T, T\)\.mask') to be set, while this
method is satisfied by any single bit\. Callers should build the mask inline by OR\-ing the
individual flags they want to test for, rather than reusing a named composite enum member
whose semantics may match [System\.Enum\.HasFlag\(System\.Enum\)](https://learn.microsoft.com/en-us/dotnet/api/system.enum.hasflag#system-enum-hasflag(system-enum) 'System\.Enum\.HasFlag\(System\.Enum\)') \(all\-of\) instead of any\-of\.

```csharp
public static bool HasAnyFlag<T>(this T value, T mask)
    where T : struct, System.Enum;
```
#### Type parameters

###### `T` {#Abblix.Utils.EnumFlagExtensions.HasAnyFlag_T_(thisT,T).T}

A `[Flags]` enum type\.
#### Parameters

###### `value` [T](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.EnumFlagExtensions#Abblix.Utils.EnumFlagExtensions.HasAnyFlag_T_(thisT,T).T 'Abblix\.Utils\.EnumFlagExtensions\.HasAnyFlag\<T\>\(this T, T\)\.T') {#Abblix.Utils.EnumFlagExtensions.HasAnyFlag_T_(thisT,T).value}

The flag value to inspect\.

###### `mask` [T](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.EnumFlagExtensions#Abblix.Utils.EnumFlagExtensions.HasAnyFlag_T_(thisT,T).T 'Abblix\.Utils\.EnumFlagExtensions\.HasAnyFlag\<T\>\(this T, T\)\.T') {#Abblix.Utils.EnumFlagExtensions.HasAnyFlag_T_(thisT,T).mask}

An OR of the flags to test for\.

#### Returns
[System\.Boolean](https://learn.microsoft.com/en-us/dotnet/api/system.boolean 'System\.Boolean')  
`true` when any flag in [mask](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.EnumFlagExtensions#Abblix.Utils.EnumFlagExtensions.HasAnyFlag_T_(thisT,T).mask 'Abblix\.Utils\.EnumFlagExtensions\.HasAnyFlag\<T\>\(this T, T\)\.mask') is set in
            [value](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.EnumFlagExtensions#Abblix.Utils.EnumFlagExtensions.HasAnyFlag_T_(thisT,T).value 'Abblix\.Utils\.EnumFlagExtensions\.HasAnyFlag\<T\>\(this T, T\)\.value'); otherwise `false`\.
