<Type Name="Bitmask&lt;T&gt;" FullName="Gendarme.Framework.Bitmask&lt;T&gt;">
  <TypeSignature Language="C#" Value="public class Bitmask&lt;T&gt; : IEquatable&lt;Gendarme.Framework.Bitmask&lt;T&gt;&gt; where T : struct" />
  <TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit Bitmask`1&lt;struct .ctor (class System.ValueType, class System.IConvertible) T&gt; extends System.Object implements class System.IEquatable`1&lt;class Gendarme.Framework.Bitmask`1&lt;!T&gt;&gt;" />
  <AssemblyInfo>
    <AssemblyName>Gendarme.Framework</AssemblyName>
    <AssemblyVersion>2.11.0.0</AssemblyVersion>
  </AssemblyInfo>
  <TypeParameters>
    <TypeParameter Name="T">
      <Constraints>
        <ParameterAttribute>DefaultConstructorConstraint</ParameterAttribute>
        <ParameterAttribute>NotNullableValueTypeConstraint</ParameterAttribute>
        <BaseTypeName>System.ValueType</BaseTypeName>
        <InterfaceName>System.IConvertible</InterfaceName>
      </Constraints>
    </TypeParameter>
  </TypeParameters>
  <Base>
    <BaseTypeName>System.Object</BaseTypeName>
  </Base>
  <Interfaces>
    <Interface>
      <InterfaceName>System.IEquatable&lt;Gendarme.Framework.Bitmask&lt;T&gt;&gt;</InterfaceName>
    </Interface>
  </Interfaces>
  <Docs>
    <typeparam name="T">Type on which the bitmask is based.</typeparam>
    <summary>
            Provide a bitmask, up to 64 bits, based on an enum or integral value
            (sadly this can't be restricted to enums/integral types using 'where').
            </summary>
    <remarks>To be added.</remarks>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public Bitmask ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Parameters />
      <Docs>
        <summary>
            Construct a bitmask will all bits clear.
            </summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public Bitmask (bool initialValues);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(bool initialValues) cil managed" />
      <MemberType>Constructor</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Parameters>
        <Parameter Name="initialValues" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <param name="initialValues" />
        <summary>
            Construct a bitmask will all bits set (true) or clear (false)
            </summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Clear">
      <MemberSignature Language="C#" Value="public void Clear (T bit);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Clear(!T bit) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="bit" Type="T" />
      </Parameters>
      <Docs>
        <param name="bit">Value to clear in the bitmask</param>
        <summary>
            Clear the bit represent by the parameter.
            </summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="ClearAll">
      <MemberSignature Language="C#" Value="public void ClearAll ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void ClearAll() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
            Clear all bits
            </summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Count">
      <MemberSignature Language="C#" Value="public int Count ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance int32 Count() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Equals">
      <MemberSignature Language="C#" Value="public bool Equals (Gendarme.Framework.Bitmask&lt;T&gt; other);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance bool Equals(class Gendarme.Framework.Bitmask`1&lt;!T&gt; other) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="other" Type="Gendarme.Framework.Bitmask&lt;T&gt;" />
      </Parameters>
      <Docs>
        <param name="other">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Equals">
      <MemberSignature Language="C#" Value="public override bool Equals (object obj);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance bool Equals(object obj) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="obj" Type="System.Object" />
      </Parameters>
      <Docs>
        <param name="obj">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Get">
      <MemberSignature Language="C#" Value="public bool Get (T bit);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Get(!T bit) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="bit" Type="T" />
      </Parameters>
      <Docs>
        <param name="bit">Value to get in the bitmask</param>
        <summary>
            Get the bit represented by the parameter
            </summary>
        <returns>True if the bit is set, false otherwise.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="GetHashCode">
      <MemberSignature Language="C#" Value="public override int GetHashCode ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance int32 GetHashCode() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Intersect">
      <MemberSignature Language="C#" Value="public bool Intersect (Gendarme.Framework.Bitmask&lt;T&gt; bitmask);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Intersect(class Gendarme.Framework.Bitmask`1&lt;!T&gt; bitmask) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="bitmask" Type="Gendarme.Framework.Bitmask&lt;T&gt;" />
      </Parameters>
      <Docs>
        <param name="bitmask">Bitmask to compare</param>
        <summary>
            Does this bitmask intersects with the specified bitmask.
            </summary>
        <returns>True if the bitmask intersects with the specified bitmask, False otherwise.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="IsSubsetOf">
      <MemberSignature Language="C#" Value="public bool IsSubsetOf (Gendarme.Framework.Bitmask&lt;T&gt; bitmask);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool IsSubsetOf(class Gendarme.Framework.Bitmask`1&lt;!T&gt; bitmask) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="bitmask" Type="Gendarme.Framework.Bitmask&lt;T&gt;" />
      </Parameters>
      <Docs>
        <param name="bitmask">Bitmask to compare (potential superset)</param>
        <summary>
            Is this bitmask a subset of the specified bitmask.
            </summary>
        <returns>True if the bitmask is a subset of the specified bitmask, False otherwise.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Set">
      <MemberSignature Language="C#" Value="public void Set (T bit);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Set(!T bit) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="bit" Type="T" />
      </Parameters>
      <Docs>
        <param name="bit">Value to set in the bitmask</param>
        <summary>
            Set the bit represented by the parameter
            </summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SetAll">
      <MemberSignature Language="C#" Value="public void SetAll ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void SetAll() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>
            Set all bits
            </summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SetDown">
      <MemberSignature Language="C#" Value="public void SetDown (T bit);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void SetDown(!T bit) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="bit" Type="T" />
      </Parameters>
      <Docs>
        <param name="bit" />
        <summary>
            Set all bits, from 'value' down to 0.
            </summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="SetUp">
      <MemberSignature Language="C#" Value="public void SetUp (T bit);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig instance void SetUp(!T bit) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="bit" Type="T" />
      </Parameters>
      <Docs>
        <param name="bit" />
        <summary>
            Set all bits, from 'value' up to the maximum.
            </summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="ToString">
      <MemberSignature Language="C#" Value="public override string ToString ();" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance string ToString() cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.11.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
  </Members>
</Type>
