<?xml version="1.0" encoding="utf-8"?>
<doc>
  <assembly>
    <name>PostSharp</name>
  </assembly>
  <members>
    <member name="T:PostSharp.IgnoreWarningAttribute">
      <summary>
            Instructs PostSharp to ignore warnings and information messages. Errors cannot be ignored.
            </summary>
    </member>
    <member name="M:PostSharp.IgnoreWarningAttribute.#ctor(System.String)">
      <summary>
            Creates a new instance of <see cref="T:PostSharp.IgnoreWarningAttribute" />.
            </summary>
      <param name="messageId">Identifier of the ignored warning.</param>
    </member>
    <member name="P:PostSharp.IgnoreWarningAttribute.MessageId">
      <summary>
            Gets the identifier of the ignored warning.
            </summary>
    </member>
    <member name="P:PostSharp.IgnoreWarningAttribute.Reason">
      <summary>
            Gets or set the reason (a human-readable text) why the warning must be ignored.
            </summary>
    </member>
    <member name="T:PostSharp.MessageLocation">
      <summary>
            Represents the location of a message, which means, for the end-user, a line in a file of source code.
            From the aspect developer, the location can be known as an object representing an element of code
            (for instance a <see cref="T:System.Type" /> or <see cref="T:System.Reflection.MethodInfo" />). Such implicit locations are resolved
            by PostSharp to a file and line number.
            </summary>
    </member>
    <member name="P:PostSharp.MessageLocation.CodeElement">
      <summary>
            Element of code (reflection object or <c>Declaration</c>) from which the location must be resolved.
            </summary>
    </member>
    <member name="P:PostSharp.MessageLocation.Column">
      <summary>
              Gets the column in the file that caused the
              message.
            </summary>
    </member>
    <member name="M:PostSharp.MessageLocation.Explicit(System.String)">
      <summary>
            Builds a <see cref="T:PostSharp.MessageLocation" /> explicitely by specifying a filename, when the
            </summary>
      <param name="file">File name.</param>
      <returns>A <see cref="T:PostSharp.MessageLocation" />.</returns>
    </member>
    <member name="M:PostSharp.MessageLocation.Explicit(System.String,System.Int32,System.Int32)">
      <summary>
            Builds a <see cref="T:PostSharp.MessageLocation" /> explicitely by specifying a filename, line, and column.
            </summary>
      <param name="file">File name.</param>
      <param name="line">Line number.</param>
      <param name="column">Column number.</param>
      <returns>A <see cref="T:PostSharp.MessageLocation" />.</returns>
    </member>
    <member name="P:PostSharp.MessageLocation.File">
      <summary>
              Gets the name of the file that caused the message.
            </summary>
    </member>
    <member name="P:PostSharp.MessageLocation.Line">
      <summary>
              Gets the line in the file that caused the   message.
            </summary>
    </member>
    <member name="M:PostSharp.MessageLocation.Of(PostSharp.Reflection.LocationInfo)">
      <summary>
            Builds a <see cref="T:PostSharp.MessageLocation" /> from a <see cref="T:PostSharp.Reflection.LocationInfo" />.
            </summary>
      <param name="location">A <see cref="T:PostSharp.Reflection.LocationInfo" />.</param>
      <returns>A <see cref="T:PostSharp.MessageLocation" />.</returns>
    </member>
    <member name="M:PostSharp.MessageLocation.Of(PostSharp.Reflection.SymbolSequencePoint)">
      <summary>
            Builds a <see cref="T:PostSharp.MessageLocation" /> from a <see cref="T:PostSharp.Reflection.SymbolSequencePoint" />.
            </summary>
      <param name="symbolSequencePoint">A <see cref="T:PostSharp.Reflection.SymbolSequencePoint" />.</param>
      <returns>A <see cref="T:PostSharp.MessageLocation" /> corresponding to <paramref name="symbolSequencePoint" />.</returns>
    </member>
    <member name="M:PostSharp.MessageLocation.Of(System.Object)">
      <summary>
            Builds a <see cref="T:PostSharp.MessageLocation" /> from an object representing an
            element of code (<see cref="T:System.Type" />, <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />,
            <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Reflection.ParameterInfo" />, <see cref="T:System.Reflection.EventInfo" />,
            <see cref="T:System.Reflection.PropertyInfo" /> or, if
            you are using PostSharp SDK, any <c>Declaration</c>).
            </summary>
      <param name="codeElement">an object representing an
            element of code (<see cref="T:System.Type" />, <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />,
            <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Reflection.ParameterInfo" />, <see cref="T:System.Reflection.EventInfo" />,
            <see cref="T:System.Reflection.PropertyInfo" /> or, if you are using PostSharp SDK, any <c>Declaration</c>.</param>
      <returns>A <see cref="T:PostSharp.MessageLocation" /> representing <paramref name="codeElement" />.</returns>
    </member>
    <member name="M:PostSharp.MessageLocation.Of(System.Reflection.MemberInfo)">
      <summary>
            Builds a <see cref="T:PostSharp.MessageLocation" /> from a <see cref="T:System.Reflection.MemberInfo" /> (<see cref="T:System.Type" />, 
            <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.FieldInfo" />,
            <see cref="T:System.Reflection.PropertyInfo" />, <see cref="T:System.Reflection.EventInfo" />).
            </summary>
      <param name="member">An element of code (<see cref="T:System.Type" />, 
            <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.FieldInfo" />,
            <see cref="T:System.Reflection.PropertyInfo" />, <see cref="T:System.Reflection.EventInfo" />).</param>
      <returns>A <see cref="T:PostSharp.MessageLocation" />.</returns>
    </member>
    <member name="M:PostSharp.MessageLocation.Of(System.Reflection.ParameterInfo)">
      <summary>
            Builds a <see cref="T:PostSharp.MessageLocation" /> from a <see cref="T:System.Reflection.ParameterInfo" />.
            </summary>
      <param name="parameter">A <see cref="T:System.Reflection.ParameterInfo" />.</param>
      <returns>A <see cref="T:PostSharp.MessageLocation" />.</returns>
    </member>
    <member name="M:PostSharp.MessageLocation.Of(System.Runtime.InteropServices._Assembly)">
      <summary>
            Builds a <see cref="T:PostSharp.MessageLocation" /> from an <see cref="T:System.Runtime.InteropServices._Assembly" />.
            </summary>
      <param name="assembly">An <see cref="T:System.Runtime.InteropServices._Assembly" /> (<see cref="T:System.Reflection.Assembly" /> or its wrapper).</param>
      <returns>A <see cref="T:PostSharp.MessageLocation" />.</returns>
    </member>
    <member name="F:PostSharp.MessageLocation.Unknown">
      <summary>
            Represents an unknown or undeterminate location of the error message.
            </summary>
    </member>
    <member name="T:PostSharp.Post">
      <summary>
              Provides some methods that are transformed during post-compilation.
            </summary>
    </member>
    <member name="M:PostSharp.Post.Cast``2(``0)">
      <summary>
              At post-compile time, casts an instance of a type into another.
              A post-compile time error is reported if the source type cannot be
              assigned to the target type.
            </summary>
      <param name="o">Instance to be casted.</param>
      <typeparam name="SourceType">Source type.</typeparam>
      <typeparam name="TargetType">Target type.</typeparam>
      <returns>The object <paramref name="o" /> casted as <typeparamref name="TargetType" />.</returns>
    </member>
    <member name="M:PostSharp.Post.GetValue``1(``0)">
      <summary>
              When used to retrieve the value of a field, forces the compiler to retrieve a copy
              of the field value instead of an address to this field. This allows to call
              instance methods of value-type fields without loading the field address.
            </summary>
      <param name="value">Value.</param>
      <typeparam name="T">Type of the value to retrieve (this type parameter can generally be omitted).</typeparam>
      <returns>
        <paramref name="value" />, exactly.</returns>
    </member>
    <member name="P:PostSharp.Post.IsTransformed">
      <summary>
              Determines whether the calling program has been transformed by PostSharp.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.AdviceArgs">
      <summary>
              Base class for arguments of all advices.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.AdviceArgs.#ctor(System.Object)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.AdviceArgs" />.
            </summary>
      <param name="instance">The instance related to the advice invocation, or
              <c>null</c> if the advice is associated to a static element of code.</param>
    </member>
    <member name="P:PostSharp.Aspects.AdviceArgs.Instance">
      <summary>
              Gets or sets the object instance on which the method is being executed.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Arguments">
      <summary>
              Encapsulation of method arguments.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Arguments.Clone">
      <summary>
              Returns a shallow copy of the current object.
            </summary>
      <returns>A shallow copy of the current object.</returns>
    </member>
    <member name="M:PostSharp.Aspects.Arguments.CopyFrom(System.Object[],System.Int32)">
      <summary>
              Copies all the argument values from the elements of <see cref="T:System.Array" />.
            </summary>
      <param name="array">The array that is the source of the argument values copied into the current <see cref="T:PostSharp.Aspects.Arguments" />.</param>
      <param name="index">An integer that represents the index in <paramref name="array" /> at which copying begins.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="array" /> is <c>null</c>.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="index" /> is lower than zero.</exception>
    </member>
    <member name="M:PostSharp.Aspects.Arguments.CopyTo(System.Object[],System.Int32)">
      <summary>
              Copies all arguments values to the specified <see cref="T:System.Array" /> starting at the specified destination <see cref="T:System.Array" /> index.
            </summary>
      <param name="array">The array that is the destination of argument values copied from the current <see cref="T:PostSharp.Aspects.Arguments" />.</param>
      <param name="index">An integer that represents the index in <paramref name="array" /> at which copying begins</param>
    </member>
    <member name="P:PostSharp.Aspects.Arguments.Count">
      <summary>
              Gets the number of arguments encapsulated by the current object.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Arguments.Empty">
      <summary>
              Empty list of <see cref="T:PostSharp.Aspects.Arguments" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Arguments.GetArgument(System.Int32)">
      <summary>
              Gets the value of the argument at a given index.
            </summary>
      <param name="index">Argument index.</param>
      <returns>The value of the argument at position <paramref name="index" />.</returns>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="index" /> is lower than zero or greater or equal than <see cref="P:PostSharp.Aspects.Arguments.Count" />.</exception>
    </member>
    <member name="M:PostSharp.Aspects.Arguments.GetEnumerator">
      <summary>Returns an enumerator that iterates through the collection.</summary>
      <returns>A <see cref="T:System.Collections.Generic.IEnumerator`1" /> that can be used to iterate through the collection.</returns>
    </member>
    <member name="P:PostSharp.Aspects.Arguments.Item(System.Int32)">
      <summary>
              Gets or sets the value of an argument.
            </summary>
      <param name="index">Argument index.</param>
      <returns>The argument value.</returns>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="index" /> is lower than zero or greater or equal than <see cref="P:PostSharp.Aspects.Arguments.Count" />.</exception>
    </member>
    <member name="M:PostSharp.Aspects.Arguments.SetArgument(System.Int32,System.Object)">
      <summary>
              Sets the value of the argument at a given index.
            </summary>
      <param name="index">Argument index.</param>
      <param name="value">New value of the argument at position <paramref name="index" />.</param>
      <exception cref="T:System.InvalidCastException">
        <paramref name="value" /> is not assignable to parameter
              at position <paramref name="index" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="index" /> is lower than zero or greater or equal than <see cref="P:PostSharp.Aspects.Arguments.Count" />.</exception>
    </member>
    <member name="M:PostSharp.Aspects.Arguments.ToArray">
      <summary>
              Converts the current argument list into an <see cref="T:System.Array" />.
            </summary>
      <returns>An <see cref="T:System.Array" /> whose elements are equal to the values encapsulated by the current <see cref="T:PostSharp.Aspects.Arguments" />.</returns>
    </member>
    <member name="T:PostSharp.Aspects.Aspect">
      <summary>
            Base class for all aspects that are declared using multicast custom attributes (<see cref="T:PostSharp.Extensibility.MulticastAttribute" />).
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Aspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Aspect" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Aspect.AspectPriority">
      <summary>
              Gets or sets the weaving priority of the aspect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Aspect.CompileTimeValidate(System.Object)">
      <summary>
              Method invoked at build time to ensure that the aspect has been applied to the right target.
            </summary>
      <param name="target">Code element (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />, 
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodBase" />, <see cref="T:System.Reflection.PropertyInfo" />, <see cref="T:System.Reflection.EventInfo" />, 
              <see cref="T:System.Reflection.ParameterInfo" />, or <see cref="T:PostSharp.Reflection.LocationInfo" />) to which the aspect has been applied.</param>
      <returns>
        <c>true</c> if the aspect was applied to an acceptable target, otherwise
              <c>false</c>.</returns>
    </member>
    <member name="M:PostSharp.Aspects.Aspect.CreateAspectConfiguration">
      <summary>
              Method invoked at build time to create a concrete <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance specifically
              for the current <see cref="T:PostSharp.Aspects.Aspect" /> type.
            </summary>
      <returns>A new and empty instance of <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />, whose concrete type corresponds to
              the concrete type of the <see cref="T:PostSharp.Aspects.Aspect" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.Aspect.GetAspectConfiguration(System.Object)">
      <summary>
              Method invoked at build tome to get the imperative configuration of the current <see cref="T:PostSharp.Aspects.Aspect" />.
            </summary>
      <param name="targetElement">Code element (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />, 
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodBase" />, <see cref="T:System.Reflection.PropertyInfo" />, <see cref="T:System.Reflection.EventInfo" />, 
              <see cref="T:System.Reflection.ParameterInfo" />, or <see cref="T:PostSharp.Reflection.LocationInfo" />) to which the current <see cref="T:PostSharp.Aspects.Aspect" />
              has been applied.
            </param>
      <returns>An <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> representing the imperative configuration
              of the current <see cref="T:PostSharp.Aspects.Aspect" />.</returns>
    </member>
    <member name="P:PostSharp.Aspects.Aspect.SerializerType">
      <summary>
              Gets or sets the <see cref="T:System.Type" /> of the serializer (a type derived
              from <see cref="T:PostSharp.Aspects.Serialization.AspectSerializer" />) used to serialize the aspect instance
              at build time and deserialize it at runtime.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Aspect.SetAspectConfiguration(PostSharp.Aspects.Configuration.AspectConfiguration,System.Object)">
      <summary>
              Method invoked at build time to set up an <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> object according to the current 
              <see cref="T:PostSharp.Aspects.Aspect" /> instance and a specified target element of the current aspect.
            </summary>
      <param name="aspectConfiguration">The <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance previously returned  by the
              <see cref="M:PostSharp.Aspects.Aspect.CreateAspectConfiguration" /> method.</param>
      <param name="targetElement">Code element (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />, 
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodBase" />, <see cref="T:System.Reflection.PropertyInfo" />, <see cref="T:System.Reflection.EventInfo" />, 
              <see cref="T:System.Reflection.ParameterInfo" />, or <see cref="T:PostSharp.Reflection.LocationInfo" />) to which the current <see cref="T:PostSharp.Aspects.Aspect" />
              has been applied.
            </param>
    </member>
    <member name="T:PostSharp.Aspects.AspectInfo">
      <summary>
              Reserved for future usage.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.AspectInfo.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.AspectInfo" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.AspectInstance">
      <summary>
              Completely specifies an aspect instance, including its target code element. An <see cref="T:PostSharp.Aspects.AspectInstance" />
              contains either the aspect instance itself (<see cref="T:PostSharp.Aspects.Aspect" /> property), either information allowing to construct the aspect 
              (<see cref="P:PostSharp.Aspects.AspectSpecification.AspectConstruction" />) and configure the weaver (<see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />).
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.AspectInstance.#ctor(System.Object,PostSharp.Aspects.IAspect)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.AspectInstance" /> from a runtime aspect instance (<see cref="T:PostSharp.Aspects.IAspect" />).
            </summary>
      <param name="targetElement">Code element (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />, 
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodBase" />, <see cref="T:System.Reflection.PropertyInfo" />, <see cref="T:System.Reflection.EventInfo" />, 
              <see cref="T:System.Reflection.ParameterInfo" />, or <see cref="T:PostSharp.Reflection.LocationInfo" />) to which the current <see cref="T:PostSharp.Aspects.AspectInstance" />
              is applied.</param>
      <param name="aspect">The aspect runtime instance.</param>
    </member>
    <member name="M:PostSharp.Aspects.AspectInstance.#ctor(System.Object,PostSharp.Aspects.IAspect,PostSharp.Aspects.Configuration.AspectConfiguration)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.AspectInstance" /> from a runtime aspect instance (<see cref="T:PostSharp.Aspects.IAspect" />)
              and its <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />.
            </summary>
      <param name="targetElement">Code element (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />, 
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodBase" />, <see cref="T:System.Reflection.PropertyInfo" />, <see cref="T:System.Reflection.EventInfo" />, 
              <see cref="T:System.Reflection.ParameterInfo" />, or <see cref="T:PostSharp.Reflection.LocationInfo" />) to which the current <see cref="T:PostSharp.Aspects.AspectInstance" />
              is applied.</param>
      <param name="aspect">The aspect runtime instance.</param>
      <param name="aspectConfiguration">The aspect configuration (the type of this parameter should be equal to the
              type configuration objects expected by the concrete <paramref name="aspect" />).</param>
    </member>
    <member name="M:PostSharp.Aspects.AspectInstance.#ctor(System.Object,PostSharp.Reflection.ObjectConstruction,PostSharp.Aspects.Configuration.AspectConfiguration)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.AspectInstance" /> from
            </summary>
      <param name="targetElement">Code element (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />, 
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodBase" />, <see cref="T:System.Reflection.PropertyInfo" />, <see cref="T:System.Reflection.EventInfo" />, 
              <see cref="T:System.Reflection.ParameterInfo" />, or <see cref="T:PostSharp.Reflection.LocationInfo" />) to which the current <see cref="T:PostSharp.Aspects.AspectInstance" />
              is applied.</param>
      <param name="aspectConstruction">An <see cref="T:PostSharp.Reflection.ObjectConstruction" /> instructing how the aspect instance
              should be constructed.</param>
      <param name="aspectConfiguration">An optional configuration object whose type corresponds to 
              the the aspect type.</param>
    </member>
    <member name="P:PostSharp.Aspects.AspectInstance.TargetElement">
      <summary>
              Gets the code element (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />, 
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodBase" />, <see cref="T:System.Reflection.PropertyInfo" />, <see cref="T:System.Reflection.EventInfo" />, 
              <see cref="T:System.Reflection.ParameterInfo" />, or <see cref="T:PostSharp.Reflection.LocationInfo" />) to which the current <see cref="T:PostSharp.Aspects.AspectInstance" />
              is applied.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.AspectSpecification">
      <summary>
              Completely specifies an aspect instance (but not its target). An <see cref="T:PostSharp.Aspects.AspectSpecification" /> either the aspect instance itself 
              (<see cref="P:PostSharp.Aspects.AspectSpecification.Aspect" /> property), either information allowing to construct the aspect (<see cref="P:PostSharp.Aspects.AspectSpecification.AspectConstruction" />) and configure the weaver (<see cref="P:PostSharp.Aspects.AspectSpecification.AspectConfiguration" />).
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.AspectSpecification.#ctor(PostSharp.Reflection.ObjectConstruction,PostSharp.Aspects.Configuration.AspectConfiguration)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.AspectSpecification" /> when one cannot provide an aspect instance,
              i.e. from an <see cref="T:PostSharp.Reflection.ObjectConstruction" /> and a <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />.
            </summary>
      <param name="aspectConstruction">Aspect construction.</param>
      <param name="aspectConfiguration">Aspect configuration.</param>
    </member>
    <member name="P:PostSharp.Aspects.AspectSpecification.Aspect">
      <summary>
              Gets the aspect instance.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.AspectSpecification.AspectAssemblyQualifiedTypeName">
      <summary>
              Gets the assembly-qualified type name of the aspect.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.AspectSpecification.AspectConfiguration">
      <summary>
              Gets the aspect configuration.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.AspectSpecification.AspectConstruction">
      <summary>
              Gets the aspect construction.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.AspectSpecification.AspectTypeName">
      <summary>
              Gets the type name of the aspect.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.AspectUtilities">
      <summary>
              Utility methods for <c>PostSharp.Aspects</c>.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.AspectUtilities.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.AspectUtilities" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.AspectUtilities.GetCurrentInstanceCredentials">
      <summary>
              Gets the <see cref="T:PostSharp.Aspects.InstanceCredentials" /> of the calling instance. This method must be
              invoked from an instance method (not a static method) of a type that has been enhanced
              by an aspect.
            </summary>
      <returns>The <see cref="T:PostSharp.Aspects.InstanceCredentials" /> of the calling instance.</returns>
    </member>
    <member name="M:PostSharp.Aspects.AspectUtilities.InitializeCurrentAspects">
      <summary>
              Initializes the all the aspects of the calling instance. This method must be
              invoked from an instance method (not a static method) of a type that has been enhanced
              by an aspect.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.AssemblyLevelAspect">
      <summary>
            Base class for all aspects applied on assemblies.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.AssemblyLevelAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.AssemblyLevelAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.AssemblyLevelAspect.CompileTimeInitialize(System.Runtime.InteropServices._Assembly,PostSharp.Aspects.AspectInfo)">
      <summary>
              Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked
              before any other build-time method.
            </summary>
      <param name="assembly">Assembly to which the current aspect is applied</param>
      <param name="aspectInfo">Reserved for future usage.</param>
    </member>
    <member name="T:PostSharp.Aspects.CompositionAspect">
      <summary>
            Aspect that, when applied on a type, introduces one or many new interfaces
            into that type. 
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.CompositionAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.CompositionAspect" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.CompositionAspect.AncestorOverrideAction">
      <summary>
              Specifies the action (<see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Fail" /> or <see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Ignore" />)
              to be overtaken when an <i>ancestor</i> of one of the interfaces returned by <see cref="M:PostSharp.Aspects.CompositionAspect.GetPublicInterfaces(System.Type)" />
              is already implemented by the type to which the current aspect is applied.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.CompositionAspect.CreateAspectConfiguration">
      <summary>
              Method invoked at build time to create a concrete <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance specifically
              for the current <see cref="T:PostSharp.Aspects.Aspect" /> type.
            </summary>
      <returns>A new and empty instance of <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />, whose concrete type corresponds to
              the concrete type of the <see cref="T:PostSharp.Aspects.Aspect" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.CompositionAspect.CreateImplementationObject(PostSharp.Aspects.AdviceArgs)">
      <summary>
              Method invoked at runtime, during the initialization of instances of the target type,
              to create the composed object.
            </summary>
      <param name="args">
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;param name="args"/&gt; documentation for "M:PostSharp.Aspects.CompositionAspect.CreateImplementationObject(PostSharp.Aspects.AdviceArgs)"]</p>
      </param>
      <returns>The composed object. This interface should implement the interfaces specified
              by the <see cref="M:PostSharp.Aspects.CompositionAspect.GetPublicInterfaces(System.Type)" /> and 
              <see cref="M:PostSharp.Aspects.CompositionAspect.GetProtectedInterfaces(System.Type)" /> methods.</returns>
    </member>
    <member name="P:PostSharp.Aspects.CompositionAspect.GenerateImplementationAccessor">
      <summary>
              Determines whether the interface <see cref="T:PostSharp.Aspects.IComposed`1" /> should be introduced into the type to which the aspect
              is applied for each interface returned by the <see cref="M:PostSharp.Aspects.CompositionAspect.GetPublicInterfaces(System.Type)" /> method.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.CompositionAspect.GetProtectedInterfaces(System.Type)">
      <summary>
              Gets the array of interfaces to be introduced indirectly into
              the target type of the current aspect. These interfaces will
              become accessible through the <see cref="T:PostSharp.Aspects.IProtectedInterface`1" /> 
              interface.
            </summary>
      <param name="targetType">
        <see cref="T:System.Type" /> to which the current aspect is applied.</param>
      <returns>The array of interfaces that should be introduced indirectly into <see cref="T:System.Type" /><paramref name="targetType" />, or <c>null</c> if no interface should be introduced indirectly.</returns>
    </member>
    <member name="M:PostSharp.Aspects.CompositionAspect.GetPublicInterfaces(System.Type)">
      <summary>
              Gets the array of interfaces that should be introduced publicly into
              the target type of the current aspect.
            </summary>
      <param name="targetType">
        <see cref="T:System.Type" /> to which the current aspect is applied.</param>
      <returns>The array of interfaces that should be introduced publicly into <see cref="T:System.Type" /><paramref name="targetType" />, or <c>null</c> if no interface should
              be introduced publicly.</returns>
    </member>
    <member name="P:PostSharp.Aspects.CompositionAspect.NonSerializedImplementation">
      <summary>
              Determines whether the field containing the interface implementation (and storing the object returned by
              <see cref="M:PostSharp.Aspects.CompositionAspect.CreateImplementationObject(PostSharp.Aspects.AdviceArgs)" />) should be excluded from serialization by <see cref="T:System.Runtime.Serialization.Formatters.Binary.BinaryFormatter" />.
              The same effect is typically obtained by applying the <see cref="T:System.NonSerializedAttribute" /> custom attribute to the field.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.CompositionAspect.OverrideAction">
      <summary>
              Specifies the action (<see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Fail" /> or <see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Ignore" />)
              to be overtaken when one of the interfaces returned by <see cref="M:PostSharp.Aspects.CompositionAspect.GetPublicInterfaces(System.Type)" /> or <see cref="M:PostSharp.Aspects.CompositionAspect.GetProtectedInterfaces(System.Type)" />
              is already implemented by the type to which the current aspect is applied.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.CompositionAspect.SetAspectConfiguration(PostSharp.Aspects.Configuration.AspectConfiguration,System.Type)">
      <summary>
              Method invoked at build time to set up an <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> object according to the current 
              <see cref="T:PostSharp.Aspects.Aspect" /> instance and a specified target element of the current aspect.
            </summary>
      <param name="aspectConfiguration">The <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance previously returned  by the
              <see cref="M:PostSharp.Aspects.Aspect.CreateAspectConfiguration" /> method.</param>
      <param name="targetType">Type to which the current aspect has been applied.</param>
    </member>
    <member name="T:PostSharp.Aspects.CustomAttributeIntroductionAspect">
      <summary>
              Aspect that, when applied to a target, adds a custom attribute to this target.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.CustomAttributeIntroductionAspect.#ctor(PostSharp.Reflection.ObjectConstruction)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.CustomAttributeIntroductionAspect" /> by specifying an <see cref="T:PostSharp.Reflection.ObjectConstruction" />.
            </summary>
      <param name="attribute">Construction of the custom attribute to be added to the target.</param>
    </member>
    <member name="M:PostSharp.Aspects.CustomAttributeIntroductionAspect.#ctor(System.Reflection.CustomAttributeData)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.CustomAttributeIntroductionAspect" /> by specifying a
              <see cref="T:System.Reflection.CustomAttributeData" />.
            </summary>
      <param name="customAttributeData">Construction of the custom attribute to be added to the target.</param>
    </member>
    <member name="P:PostSharp.Aspects.CustomAttributeIntroductionAspect.CustomAttribute">
      <summary>
              Gets the construction of the custom attribute that must be applied to the target of this aspect.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.EventInterceptionArgs">
      <summary>
              Arguments of handlers of aspects of the type <see cref="T:PostSharp.Aspects.EventInterceptionAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.EventInterceptionArgs.AddHandler(System.Delegate)">
      <summary>
              Adds a handler to the event by invoking the <c>Add</c> semantic of the next node in the chain of invocation.
            </summary>
      <param name="handler">The handler to add to the event.</param>
    </member>
    <member name="P:PostSharp.Aspects.EventInterceptionArgs.Arguments">
      <summary>
              Gets the delegate arguments.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.EventInterceptionArgs.Binding">
      <summary>
              Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.EventInterceptionArgs.Event">
      <summary>
              Gets the event to which the current aspect has been applied.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.EventInterceptionArgs.Handler">
      <summary>
              Gets the delegate being added, removed, or invoked.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.EventInterceptionArgs.InvokeHandler(System.Delegate,PostSharp.Aspects.Arguments)">
      <summary>
              Invokes a handler by calling the <c>Invoke</c> semantic of the next node in the chain of invocation.
            </summary>
      <param name="handler">Handler to be invoked.</param>
      <param name="arguments">Arguments passed to the handler.</param>
      <returns>Return value of the handler.</returns>
    </member>
    <member name="M:PostSharp.Aspects.EventInterceptionArgs.ProceedAddHandler">
      <summary>
              Proceeds with adding the <see cref="T:System.Delegate" /> to the event to which the current aspect. 
              This method invokes the next handler in chain. 
              It is typically invoked from the implementation of <see cref="M:PostSharp.Aspects.IEventInterceptionAspect.OnAddHandler(PostSharp.Aspects.EventInterceptionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.EventInterceptionArgs.ProceedInvokeHandler">
      <summary>
              Proceeds with invoking the <see cref="T:System.Delegate" /> with the arguments specified in the <see cref="P:PostSharp.Aspects.EventInterceptionArgs.Arguments" /> property.
              The delegate may change the <see cref="P:PostSharp.Aspects.EventInterceptionArgs.Arguments" /> and set the <see cref="P:PostSharp.Aspects.EventInterceptionArgs.ReturnValue" />.
              This method invokes the next handler in chain. 
              It is typically invoked from the implementation of <see cref="M:PostSharp.Aspects.IEventInterceptionAspect.OnInvokeHandler(PostSharp.Aspects.EventInterceptionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.EventInterceptionArgs.ProceedRemoveHandler">
      <summary>
              Proceeds with removing the <see cref="T:System.Delegate" /> from the event to which the current aspect. 
              This method invokes the next handler in chain. 
              It is typically invoked from the implementation of <see cref="M:PostSharp.Aspects.IEventInterceptionAspect.OnRemoveHandler(PostSharp.Aspects.EventInterceptionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.EventInterceptionArgs.RemoveHandler(System.Delegate)">
      <summary>
              Removes a handler from the event by invoking the <c>Remove</c> semantic of the next node in the chain of invocation.
            </summary>
      <param name="handler">Handler to be removed.</param>
    </member>
    <member name="P:PostSharp.Aspects.EventInterceptionArgs.ReturnValue">
      <summary>
              Gets the return value of the delegate.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.EventInterceptionAspect">
      <summary>
            Aspect that, when applied on an event, intercepts invocations of its semantics <c>Add</c> (<see cref="M:PostSharp.Aspects.EventInterceptionAspect.OnAddHandler(PostSharp.Aspects.EventInterceptionArgs)" />), 
            <c>Remove</c> (<see cref="M:PostSharp.Aspects.EventInterceptionAspect.OnRemoveHandler(PostSharp.Aspects.EventInterceptionArgs)" />) and <c>Invoke</c> (<see cref="M:PostSharp.Aspects.EventInterceptionAspect.OnInvokeHandler(PostSharp.Aspects.EventInterceptionArgs)" />).
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.EventInterceptionAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.EventInterceptionAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.EventInterceptionAspect.CreateAspectConfiguration">
      <summary>
              Method invoked at build time to create a concrete <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance specifically
              for the current <see cref="T:PostSharp.Aspects.Aspect" /> type.
            </summary>
      <returns>A new and empty instance of <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />, whose concrete type corresponds to
              the concrete type of the <see cref="T:PostSharp.Aspects.Aspect" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.EventInterceptionAspect.OnAddHandler(PostSharp.Aspects.EventInterceptionArgs)">
      <summary>
              Method invoked <i>instead</i> of the <c>Add</c> semantic of the event to which the current aspect is applied,
              i.e. when a new delegate is added to this event.
            </summary>
      <param name="args">Handler arguments.</param>
    </member>
    <member name="M:PostSharp.Aspects.EventInterceptionAspect.OnInvokeHandler(PostSharp.Aspects.EventInterceptionArgs)">
      <summary>
              Method invoked when the event to which the current aspect is applied is fired, <i>for each</i> delegate
              of this event, and <i>instead of</i> invoking this delegate.
            </summary>
      <param name="args">Handler arguments.</param>
    </member>
    <member name="M:PostSharp.Aspects.EventInterceptionAspect.OnRemoveHandler(PostSharp.Aspects.EventInterceptionArgs)">
      <summary>
              Method invoked <i>instead</i> of the <c>Remove</c> semantic of the event to which the current aspect is applied,
              i.e. when a delegate is removed from this event.
            </summary>
      <param name="args">Handler arguments.</param>
    </member>
    <member name="T:PostSharp.Aspects.EventLevelAspect">
      <summary>
            Base class for all aspects applied on events.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.EventLevelAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.EventLevelAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.EventLevelAspect.CompileTimeInitialize(System.Reflection.EventInfo,PostSharp.Aspects.AspectInfo)">
      <summary>
              Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked
              before any other build-time method.
            </summary>
      <param name="targetEvent">Event to which the current aspect is applied</param>
      <param name="aspectInfo">Reserved for future usage.</param>
    </member>
    <member name="M:PostSharp.Aspects.EventLevelAspect.RuntimeInitialize(System.Reflection.EventInfo)">
      <summary>
              Initializes the current aspect.
            </summary>
      <param name="eventInfo">Event to which the current aspect is applied.</param>
    </member>
    <member name="T:PostSharp.Aspects.ExternalAspect">
      <summary>
              Aspect implemented in a different type (implementing the <see cref="T:PostSharp.Aspects.IExternalAspectImplementation" />
              interface), typically contained in an external assembly. Classes derived from <see cref="T:PostSharp.Aspects.ExternalAspect" />
              must be annotated by the custom attribute <see cref="T:PostSharp.Aspects.Configuration.ExternalAspectConfigurationAttribute" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.ExternalAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.ExternalAspect" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.FieldLevelAspect">
      <summary>
            Base class for all aspects applied on fields.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.FieldLevelAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.FieldLevelAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.FieldLevelAspect.CompileTimeInitialize(System.Reflection.FieldInfo,PostSharp.Aspects.AspectInfo)">
      <summary>
              Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked
              before any other build-time method.
            </summary>
      <param name="field">Field to which the current aspect is applied</param>
      <param name="aspectInfo">Reserved for future usage.</param>
    </member>
    <member name="M:PostSharp.Aspects.FieldLevelAspect.RuntimeInitialize(System.Reflection.FieldInfo)">
      <summary>
              Method invoked at runtime before any other method of the aspect is invoked.
            </summary>
      <param name="field">Field on which this instance is applied.</param>
    </member>
    <member name="T:PostSharp.Aspects.FlowBehavior">
      <summary>
              Enumerates the possible behaviors of the calling method after the calling method has returned.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.FlowBehavior.Default">
      <summary>
              Default flow behavior for the current method. For <b>OnEntry</b> or <b>OnExit</b>, the fault flow is
              <see cref="F:PostSharp.Aspects.FlowBehavior.Continue" />, for <b>OnException</b> it is <see cref="F:PostSharp.Aspects.FlowBehavior.RethrowException" />.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.FlowBehavior.Continue">
      <summary>
              Continue normally (in an <b>OnException</b> advice, does not rethrow the exception).
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.FlowBehavior.RethrowException">
      <summary>
              The current exception will be rethrown. Available only for <b>OnException</b>.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.FlowBehavior.Return">
      <summary>
              Return immediately from the current method. Available only for <b>OnEntry</b> and
              <b>OnException</b>. Note that you may want to set the <see cref="P:PostSharp.Aspects.MethodExecutionArgs.ReturnValue" />
              property, otherwise you may get a <see cref="T:System.NullReferenceException" />.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.FlowBehavior.ThrowException">
      <summary>
            Throws the exception contained in <see cref="P:PostSharp.Aspects.MethodExecutionArgs.Exception" />. Available only for <c>OnException</c>.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.IAspect">
      <summary>
              Base interface for run-time semantics of all aspects.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.IAspectBuildSemantics">
      <summary>
              Compile-time semantics of <see cref="T:PostSharp.Aspects.IAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IAspectBuildSemantics.GetAspectConfiguration(System.Object)">
      <summary>
              Method invoked at build time to get the imperative configuration of the current <see cref="T:PostSharp.Aspects.Aspect" />.
            </summary>
      <param name="targetElement">Code element (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />, 
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodBase" />, <see cref="T:System.Reflection.PropertyInfo" />, <see cref="T:System.Reflection.EventInfo" />, 
              <see cref="T:System.Reflection.ParameterInfo" />, or <see cref="T:PostSharp.Reflection.LocationInfo" />) to which the current aspect has been applied.
            </param>
      <returns>An <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> representing the imperative configuration
              of the current <see cref="T:PostSharp.Aspects.Aspect" />.</returns>
    </member>
    <member name="T:PostSharp.Aspects.IAspectProvider">
      <summary>
              Interface that, when implemented by an aspect class, allows aspect instances
              to provide other aspects to the weaver.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IAspectProvider.ProvideAspects(System.Object)">
      <summary>
              Provides new aspects.
            </summary>
      <param name="targetElement">Code element (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />, 
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodBase" />, <see cref="T:System.Reflection.PropertyInfo" />, <see cref="T:System.Reflection.EventInfo" />, 
              <see cref="T:System.Reflection.ParameterInfo" />, or <see cref="T:PostSharp.Reflection.LocationInfo" />) to which the current aspect has been applied.
            </param>
      <returns>A set of aspect instances.</returns>
    </member>
    <member name="T:PostSharp.Aspects.IAssemblyLevelAspect">
      <summary>
              Runtime semantics of aspects applied at assembly level.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.IAssemblyLevelAspectBuildSemantics">
      <summary>
              Build-time semantics of aspects applied at assembly level.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IAssemblyLevelAspectBuildSemantics.CompileTimeInitialize(System.Runtime.InteropServices._Assembly,PostSharp.Aspects.AspectInfo)">
      <summary>
              Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked
              before any other build-time method.
            </summary>
      <param name="assembly">Assembly to which the current aspect is applied</param>
      <param name="aspectInfo">Reserved for future usage.</param>
    </member>
    <member name="T:PostSharp.Aspects.IComposed`1">
      <summary>
              Interface exposing the implementation of another interface introduced
              by a <see cref="T:PostSharp.Aspects.CompositionAspect" />.
            </summary>
      <typeparam name="T">Interface whose implementation is expose.</typeparam>
    </member>
    <member name="M:PostSharp.Aspects.IComposed`1.GetImplementation(PostSharp.Aspects.InstanceCredentials)">
      <summary>
              Gets the object implementing the interface <typeparamref name="T" />
              on behalf of the current instance.
            </summary>
      <param name="credentials">Credentials provided by the current instance.</param>
      <returns>The object implementing the interface <typeparamref name="T" />
              on behalf of the current instance.
            </returns>
    </member>
    <member name="T:PostSharp.Aspects.ICompositionAspect">
      <summary>
              Defines the semantics of an aspect that, when applied on a type, introduce one or many new interfaces
              into that type, and let these interfaces be implemented by an object created
              at runtime.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.ICompositionAspect.CreateImplementationObject(PostSharp.Aspects.AdviceArgs)">
      <summary>
              Method invoked at runtime, during the initialization of instances of the target type,
              to create the composed object.
            </summary>
      <param name="args">
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;param name="args"/&gt; documentation for "M:PostSharp.Aspects.ICompositionAspect.CreateImplementationObject(PostSharp.Aspects.AdviceArgs)"]</p>
      </param>
      <returns>The composed object. This interface should implement the interfaces specified
              by the <see cref="P:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.PublicInterfaces" /> and 
              <see cref="P:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.ProtectedInterfaces" /> collections.</returns>
    </member>
    <member name="T:PostSharp.Aspects.ICustomAttributeIntroductionAspect">
      <summary>
              Semantics of an aspect that, when applied to a target, adds a custom attribute to this target.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.IEventBinding">
      <summary>
              Interface through which an event-level aspect or advice can
              invoke the next node in the chain of invocation.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IEventBinding.AddHandler(System.Object@,System.Delegate)">
      <summary>
              Invoke the <c>Add</c> semantic on the next node in the chain of invocation.
            </summary>
      <param name="instance">Target instance on which the event is defined (<c>null</c> if the event is static).</param>
      <param name="handler">Handler to be added to the event.</param>
    </member>
    <member name="M:PostSharp.Aspects.IEventBinding.InvokeHandler(System.Object@,System.Delegate,PostSharp.Aspects.Arguments)">
      <summary>
              Invoke the <c>Invoke</c> semantic on the next node in the chain of invocation.
            </summary>
      <param name="instance">Target instance on which the event is defined (<c>null</c> if the event is static).</param>
      <param name="handler">Handler to be removed from the event.</param>
      <param name="arguments">Arguments with which the <paramref name="handler" /> should be invoked.</param>
      <returns>The value returned by the handler.</returns>
    </member>
    <member name="M:PostSharp.Aspects.IEventBinding.RemoveHandler(System.Object@,System.Delegate)">
      <summary>
              Invoke the <c>Remove</c> semantic on the next node in the chain of invocation.
            </summary>
      <param name="instance">Target instance on which the event is defined (<c>null</c> if the event is static).</param>
      <param name="handler">Handler to be removed from the event.</param>
    </member>
    <member name="T:PostSharp.Aspects.IEventInterceptionAspect">
      <summary>
              Runtime semantics of an aspect that, when applied on an event, intercepts invocations of its semantics <c>Add</c> (<see cref="M:PostSharp.Aspects.IEventInterceptionAspect.OnAddHandler(PostSharp.Aspects.EventInterceptionArgs)" />), 
              <c>Remove</c> (<see cref="M:PostSharp.Aspects.IEventInterceptionAspect.OnRemoveHandler(PostSharp.Aspects.EventInterceptionArgs)" />) and <c>Invoke</c> (<see cref="M:PostSharp.Aspects.IEventInterceptionAspect.OnInvokeHandler(PostSharp.Aspects.EventInterceptionArgs)" />) semantics.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IEventInterceptionAspect.OnAddHandler(PostSharp.Aspects.EventInterceptionArgs)">
      <summary>
              Method invoked <i>instead</i> of the <c>Add</c> semantic of the event to which the current aspect is applied,
              i.e. when a new delegate is added to this event.
            </summary>
      <param name="args">Handler arguments.</param>
    </member>
    <member name="M:PostSharp.Aspects.IEventInterceptionAspect.OnInvokeHandler(PostSharp.Aspects.EventInterceptionArgs)">
      <summary>
              Method invoked when the event to which the current aspect is applied is fired, <i>for each</i> delegate
              of this event, and <i>instead of</i> invoking this delegate.
            </summary>
      <param name="args">Handler arguments.</param>
    </member>
    <member name="M:PostSharp.Aspects.IEventInterceptionAspect.OnRemoveHandler(PostSharp.Aspects.EventInterceptionArgs)">
      <summary>
              Method invoked <i>instead</i> of the <c>Remove</c> semantic of the event to which the current aspect is applied,
              i.e. when a delegate is removed from this event.
            </summary>
      <param name="args">Handler arguments.</param>
    </member>
    <member name="T:PostSharp.Aspects.IEventLevelAspect">
      <summary>
              Runtime semantics of aspects that can be applied on events.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IEventLevelAspect.RuntimeInitialize(System.Reflection.EventInfo)">
      <summary>
              Initializes the current aspect.
            </summary>
      <param name="eventInfo">Event to which the current aspect is applied.</param>
    </member>
    <member name="T:PostSharp.Aspects.IEventLevelAspectBuildSemantics">
      <summary>
              Build-time semantics of aspects that can be applied on events.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IEventLevelAspectBuildSemantics.CompileTimeInitialize(System.Reflection.EventInfo,PostSharp.Aspects.AspectInfo)">
      <summary>
              Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked
              before any other build-time method.
            </summary>
      <param name="targetEvent">Event to which the current aspect is applied</param>
      <param name="aspectInfo">Reserved for future usage.</param>
    </member>
    <member name="T:PostSharp.Aspects.IExternalAspect">
      <summary>
              Allows to turn an arbitrary custom attribute into an aspect, while implementing the aspect in
              a different class. Classes implementing this interface must be annotated with the 
              <see cref="T:PostSharp.Aspects.Configuration.ExternalAspectConfigurationAttribute" /> custom attribute.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.IExternalAspectImplementation">
      <summary>
              Implementation of an <see cref="T:PostSharp.Aspects.IExternalAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IExternalAspectImplementation.ProvideImplementationAspects(System.Object,PostSharp.Reflection.ObjectConstruction)">
      <summary>
              Returns a set of aspect instances to be added to the project.
            </summary>
      <param name="target">Code element (<see cref="T:System.Type" />, <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodInfo" />,
              <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.ParameterInfo" />, ...) on which the
              aspect is applied.</param>
      <param name="aspectConstruction">Representation of the aspect instance (implementing <see cref="T:PostSharp.Aspects.IExternalAspect" />)
              requiring external implementation.</param>
      <returns>
              A set of aspect instances to be added to the project. Objects <see cref="T:PostSharp.Aspects.AspectInstance" /> are expected
              to be initialized using a constructor taking a required argument of type <see cref="T:PostSharp.Reflection.ObjectConstruction" />
              and an optional parameter of type <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />.
            </returns>
    </member>
    <member name="T:PostSharp.Aspects.IFieldLevelAspect">
      <summary>
              Run-time semantics of aspects applied to fields.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IFieldLevelAspect.RuntimeInitialize(System.Reflection.FieldInfo)">
      <summary>
              Method invoked at runtime before any other method of the aspect is invoked.
            </summary>
      <param name="field">Field on which this instance is applied.</param>
    </member>
    <member name="T:PostSharp.Aspects.IFieldLevelAspectBuildSemantics">
      <summary>
              Compile-time semantics of <see cref="T:PostSharp.Aspects.IFieldLevelAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IFieldLevelAspectBuildSemantics.CompileTimeInitialize(System.Reflection.FieldInfo,PostSharp.Aspects.AspectInfo)">
      <summary>
              Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked
              before any other build-time method.
            </summary>
      <param name="field">Field to which the current aspect is applied</param>
      <param name="aspectInfo">Reserved for future usage.</param>
    </member>
    <member name="T:PostSharp.Aspects.IInstanceScopedAspect">
      <summary>
              Runtime semantics of aspects that have the same lifetime as <i>instance</i> of types
              to which their are applied (or instance of the declaring type of members to which they are applied).
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IInstanceScopedAspect.CreateInstance(PostSharp.Aspects.AdviceArgs)">
      <summary>
              Creates a new instance of the aspect based on the current instance, serving as a prototype.
            </summary>
      <param name="adviceArgs">Aspect arguments.</param>
      <returns>A new instance of the aspect, typically a clone of the current prototype instance.</returns>
    </member>
    <member name="M:PostSharp.Aspects.IInstanceScopedAspect.RuntimeInitializeInstance">
      <summary>
              Initializes the aspect instance. This method is invoked when all system elements of the aspect (like member imports)
              have completed.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.ILocationBinding">
      <summary>
              Interface through which a field- or property-level aspect or advice can
              invoke the next node in the chain of invocation.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.ILocationBinding.GetValue(System.Object@,PostSharp.Aspects.Arguments)">
      <summary>
              Invokes the <c>Get</c> semantic on the next node in the chain of invocation.
            </summary>
      <param name="instance">Target instance from which the field or property should be retrieved (<c>null</c> if the field or property is static).</param>
      <param name="index">Index arguments, if the location is an indexer property.</param>
      <returns>The value stored at the location.</returns>
    </member>
    <member name="M:PostSharp.Aspects.ILocationBinding.SetValue(System.Object@,PostSharp.Aspects.Arguments,System.Object)">
      <summary>
              Invokes the <c>Set</c> semantic on the next node in the chain of invocation.
            </summary>
      <param name="instance">Target instance from which the field or property should be retrieved (<c>null</c> if the field or property is static).</param>
      <param name="index">Index arguments, if the location is an indexer property.</param>
      <param name="value">New value to be stored at the location.</param>
    </member>
    <member name="T:PostSharp.Aspects.ILocationInterceptionAspect">
      <summary>
              Runtime semantics of an aspect that, when applied on a location (field or property), intercepts invocations of
              the <c>Get</c> (<see cref="M:PostSharp.Aspects.ILocationInterceptionAspect.OnGetValue(PostSharp.Aspects.LocationInterceptionArgs)" />) and <c>Set</c> (<see cref="M:PostSharp.Aspects.ILocationInterceptionAspect.OnSetValue(PostSharp.Aspects.LocationInterceptionArgs)" />) semantics.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.ILocationInterceptionAspect.OnGetValue(PostSharp.Aspects.LocationInterceptionArgs)">
      <summary>
              Method invoked <i>instead</i> of the <c>Get</c> semantic of the field or property to which the current aspect is applied,
              i.e. when the value of this field or property is retrieved.
            </summary>
      <param name="args">Advice arguments.</param>
    </member>
    <member name="M:PostSharp.Aspects.ILocationInterceptionAspect.OnSetValue(PostSharp.Aspects.LocationInterceptionArgs)">
      <summary>
              Method invoked <i>instead</i> of the <c>Set</c> semantic of the field or property to which the current aspect is applied,
              i.e. when the value of this field or property is changed.
            </summary>
      <param name="args">Advice arguments.</param>
    </member>
    <member name="T:PostSharp.Aspects.ILocationLevelAspect">
      <summary>
              Runtime semantics of aspects defined on a field, property, or parameter.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.ILocationLevelAspect.RuntimeInitialize(PostSharp.Reflection.LocationInfo)">
      <summary>
              Initializes the current aspect.
            </summary>
      <param name="locationInfo">Location to which the current aspect is applied.</param>
    </member>
    <member name="T:PostSharp.Aspects.ILocationLevelAspectBuildSemantics">
      <summary>
              Compile-time semantics of <see cref="T:PostSharp.Aspects.IMethodLevelAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.ILocationLevelAspectBuildSemantics.CompileTimeInitialize(PostSharp.Reflection.LocationInfo,PostSharp.Aspects.AspectInfo)">
      <summary>
              Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked
              before any other build-time method.
            </summary>
      <param name="targetLocation">Location to which the current aspect is applied</param>
      <param name="aspectInfo">Reserved for future usage.</param>
    </member>
    <member name="T:PostSharp.Aspects.IManagedResourceIntroductionAspect">
      <summary>
              Semantics of an aspect that, when applied to an assembly, adds a managed resource to this assembly.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.IMethodBinding">
      <summary>
              Interface through which a method-level aspect or advice can
              invoke the next node in the chain of invocation.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IMethodBinding.Invoke(System.Object@,PostSharp.Aspects.Arguments)">
      <summary>
              Invokes the next node in the chain of invocation.
            </summary>
      <param name="instance">Target instance on which the method should be invoked (<c>null</c> if the method is static).</param>
      <param name="arguments">Method arguments.</param>
      <returns>Return value of the method.</returns>
    </member>
    <member name="T:PostSharp.Aspects.IMethodInterceptionAspect">
      <summary>
              Runtime semantics of an aspect that, when applied on a method, intercepts invocations of this method.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IMethodInterceptionAspect.OnInvoke(PostSharp.Aspects.MethodInterceptionArgs)">
      <summary>
              Method invoked <i>instead</i> of the method to which the aspect has been applied.
            </summary>
      <param name="args">Advice arguments.</param>
    </member>
    <member name="T:PostSharp.Aspects.IMethodLevelAspect">
      <summary>
              Runtime semantics of aspects applied to methods.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IMethodLevelAspect.RuntimeInitialize(System.Reflection.MethodBase)">
      <summary>
              Initializes the current aspect.
            </summary>
      <param name="method">Method to which the current aspect is applied.</param>
    </member>
    <member name="T:PostSharp.Aspects.IMethodLevelAspectBuildSemantics">
      <summary>
              Compile-time semantics of <see cref="T:PostSharp.Aspects.IMethodLevelAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IMethodLevelAspectBuildSemantics.CompileTimeInitialize(System.Reflection.MethodBase,PostSharp.Aspects.AspectInfo)">
      <summary>
              Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked
              before any other build-time method.
            </summary>
      <param name="method">Method to which the current aspect is applied</param>
      <param name="aspectInfo">Reserved for future usage.</param>
    </member>
    <member name="T:PostSharp.Aspects.InstanceCredentials">
      <summary>
            Credentials that give access to 'protected' semantics.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.InstanceCredentials.AssertEquals(PostSharp.Aspects.InstanceCredentials)">
      <summary>
              Throws an exception if given credentials are not equal
              to the current one.
            </summary>
      <param name="others">Other credentials.</param>
    </member>
    <member name="M:PostSharp.Aspects.InstanceCredentials.Equals(PostSharp.Aspects.InstanceCredentials)">
      <summary>Indicates whether the current object is equal to another object of the same type.</summary>
      <param name="other">An object to compare with this object.</param>
      <returns>true if the current object is equal to the <paramref name="other" /> parameter; otherwise, false.</returns>
    </member>
    <member name="M:PostSharp.Aspects.InstanceCredentials.Equals(System.Object)">
      <summary>Indicates whether this instance and a specified object are equal.</summary>
      <param name="obj">Another object to compare to. </param>
      <returns>true if <paramref name="obj" /> and this instance are the same type and represent the same value; otherwise, false.</returns>
    </member>
    <member name="M:PostSharp.Aspects.InstanceCredentials.GetHashCode">
      <summary>Returns the hash code for this instance.</summary>
      <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
    </member>
    <member name="M:PostSharp.Aspects.InstanceCredentials.MakeNew">
      <summary>
              Creates a new <see cref="T:PostSharp.Aspects.InstanceCredentials" />.
            </summary>
      <returns>A new <see cref="T:PostSharp.Aspects.InstanceCredentials" />.</returns>
    </member>
    <member name="F:PostSharp.Aspects.InstanceCredentials.Null">
      <summary>
            Gets a null (or empty) <see cref="T:PostSharp.Aspects.InstanceCredentials" />/
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.InstanceCredentials.op_Equality(PostSharp.Aspects.InstanceCredentials,PostSharp.Aspects.InstanceCredentials)">
      <summary>
              Determines whether two <see cref="T:PostSharp.Aspects.InstanceCredentials" /> are equal.
            </summary>
      <param name="left">An <see cref="T:PostSharp.Aspects.InstanceCredentials" /> object.</param>
      <param name="right">An <see cref="T:PostSharp.Aspects.InstanceCredentials" /> object.</param>
      <returns>
        <c>true</c> if <paramref name="left" /> equals <paramref name="right" />,
              otherwise <c>false</c>.</returns>
    </member>
    <member name="M:PostSharp.Aspects.InstanceCredentials.op_Inequality(PostSharp.Aspects.InstanceCredentials,PostSharp.Aspects.InstanceCredentials)">
      <summary>
              Determines whether two <see cref="T:PostSharp.Aspects.InstanceCredentials" /> are different.
            </summary>
      <param name="left">An <see cref="T:PostSharp.Aspects.InstanceCredentials" /> object.</param>
      <param name="right">An <see cref="T:PostSharp.Aspects.InstanceCredentials" /> object.</param>
      <returns>
        <c>true</c> if <paramref name="left" /> is different than <paramref name="right" />,
              otherwise <c>false</c>.</returns>
    </member>
    <member name="M:PostSharp.Aspects.InstanceCredentials.ToString">
      <summary>Returns the fully qualified type name of this instance.</summary>
      <returns>A <see cref="T:System.String" /> containing a fully qualified type name.</returns>
    </member>
    <member name="T:PostSharp.Aspects.InstanceLevelAspect">
      <summary>
            Base class for aspects applied on types, but having the same lifetime as
            instances of the type to which they are applied.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.InstanceLevelAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.InstanceLevelAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.InstanceLevelAspect.CreateAspectConfiguration">
      <summary>
              Method invoked at build time to create a concrete <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance specifically
              for the current <see cref="T:PostSharp.Aspects.Aspect" /> type.
            </summary>
      <returns>A new and empty instance of <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />, whose concrete type corresponds to
              the concrete type of the <see cref="T:PostSharp.Aspects.Aspect" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.InstanceLevelAspect.CreateInstance(PostSharp.Aspects.AdviceArgs)">
      <summary>
              Creates a new instance of the aspect based on the current instance, serving as a prototype.
            </summary>
      <param name="adviceArgs">Aspect arguments.</param>
      <returns>A new instance of the aspect, typically a clone of the current prototype instance.</returns>
    </member>
    <member name="P:PostSharp.Aspects.InstanceLevelAspect.Instance">
      <summary>
              Gets the object to which the current aspect has been applied.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.InstanceLevelAspect.RuntimeInitializeInstance">
      <summary>
              Initializes the aspect instance. This method is invoked when all system elements of the aspect (like member imports)
              have completed.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.IOnExceptionAspect">
      <summary>
              Runtime semantics of an aspect that, when applied on a method,
              defines an exception handler around the whole method body
              and let the implementation of this interface handle the exception.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IOnExceptionAspect.OnException(PostSharp.Aspects.MethodExecutionArgs)">
      <summary>
              Method executed <b>after</b> the body of methods to which this aspect is applied,
              in case that the method resulted with an exception (i.e., in a <c>catch</c> block).
            </summary>
      <param name="args">Advice arguments.</param>
    </member>
    <member name="T:PostSharp.Aspects.IOnMethodBoundaryAspect">
      <summary>
              Runtime semantics of <see cref="T:PostSharp.Aspects.OnMethodBoundaryAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.IOnMethodBoundaryAspect.OnEntry(PostSharp.Aspects.MethodExecutionArgs)">
      <summary>
              Method executed <b>before</b> the body of methods to which this aspect is applied.
            </summary>
      <param name="args">Event arguments specifying which method
              is being executed, which are its arguments, and how should the execution continue
              after the execution of <see cref="M:PostSharp.Aspects.IOnMethodBoundaryAspect.OnEntry(PostSharp.Aspects.MethodExecutionArgs)" />.</param>
    </member>
    <member name="M:PostSharp.Aspects.IOnMethodBoundaryAspect.OnException(PostSharp.Aspects.MethodExecutionArgs)">
      <summary>
              Method executed <b>after</b> the body of methods to which this aspect is applied,
              in case that the method resulted with an exception.
            </summary>
      <param name="args">Event arguments specifying which method
              is being executed and which are its arguments.</param>
    </member>
    <member name="M:PostSharp.Aspects.IOnMethodBoundaryAspect.OnExit(PostSharp.Aspects.MethodExecutionArgs)">
      <summary>
              Method executed <b>after</b> the body of methods to which this aspect is applied,
              even when the method exists with an exception (this method is invoked from
              the <c>finally</c> block).
            </summary>
      <param name="args">Event arguments specifying which method
              is being executed and which are its arguments.</param>
    </member>
    <member name="M:PostSharp.Aspects.IOnMethodBoundaryAspect.OnSuccess(PostSharp.Aspects.MethodExecutionArgs)">
      <summary>
              Method executed <b>after</b> the body of methods to which this aspect is applied,
              but only when the method successfully returns (i.e. when no exception flies out
              the method.).
            </summary>
      <param name="args">Event arguments specifying which method
              is being executed and which are its arguments.</param>
    </member>
    <member name="T:PostSharp.Aspects.IProtectedInterface`1">
      <summary>
              Gives access to a 'protected' interface, typically introduced
              by a <see cref="T:PostSharp.Aspects.CompositionAspect" /> or a <see cref="T:PostSharp.Aspects.Advices.IntroduceInterfaceAttribute" /></summary>
      <typeparam name="T">Exposed interface.</typeparam>
    </member>
    <member name="M:PostSharp.Aspects.IProtectedInterface`1.GetInterface(PostSharp.Aspects.InstanceCredentials)">
      <summary>
              Gets a protected interface.
            </summary>
      <param name="credentials">Credentials of the current instance.</param>
      <returns>The implementation of the interface <typeparamref name="T" />.</returns>
    </member>
    <member name="T:PostSharp.Aspects.ITypeLevelAspect">
      <summary>
              Run-time semantics of aspects applied to types.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.ITypeLevelAspect.RuntimeInitialize(System.Type)">
      <summary>
              Initializes the current aspect.
            </summary>
      <param name="type">Type to which the current aspect is applied.</param>
    </member>
    <member name="T:PostSharp.Aspects.ITypeLevelAspectBuildSemantics">
      <summary>
              Compile-time semantics of <see cref="T:PostSharp.Aspects.ITypeLevelAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.ITypeLevelAspectBuildSemantics.CompileTimeInitialize(System.Type,PostSharp.Aspects.AspectInfo)">
      <summary>
              Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked
              before any other build-time method.
            </summary>
      <param name="type">Type to which the current aspect is applied</param>
      <param name="aspectInfo">Reserved for future usage.</param>
    </member>
    <member name="T:PostSharp.Aspects.LocationInterceptionArgs">
      <summary>
              Arguments of advices of aspect type <see cref="T:PostSharp.Aspects.LocationInterceptionAspect" />.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.LocationInterceptionArgs.Binding">
      <summary>
              Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.LocationInterceptionArgs.GetCurrentValue">
      <summary>
              Retrieves the current value of the location without overwriting the <see cref="P:PostSharp.Aspects.LocationInterceptionArgs.Value" /> property.
            </summary>
      <returns>The current value of the location, as returned by the next node in the chain of invocation (see <see cref="P:PostSharp.Aspects.LocationInterceptionArgs.Binding" />).</returns>
    </member>
    <member name="P:PostSharp.Aspects.LocationInterceptionArgs.Index">
      <summary>
              Gets the current index arguments (in case of a property with parameters).
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.LocationInterceptionArgs.Location">
      <summary>
              Gets the location (field, property or parameter) related to the aspect or advice being executed.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.LocationInterceptionArgs.LocationFullName">
      <summary>
              Gets the full name (including the full name of the declaring type) of the location (field, property or parameter) related to the aspect or advice being executed.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.LocationInterceptionArgs.LocationName">
      <summary>
              Gets the name of the location (field, property or parameter) related to the aspect or advice being executed.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.LocationInterceptionArgs.ProceedGetValue">
      <summary>
              Invokes the <b>Get Location Value</b> semantic on the next node in the chain of invocation and stores the location value in the <see cref="P:PostSharp.Aspects.LocationInterceptionArgs.Value" /> property.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.LocationInterceptionArgs.ProceedSetValue">
      <summary>
              Invokes the <b>Set Location Value</b> semantic on the next node in the chain of invocation and stores the value of the <see cref="P:PostSharp.Aspects.LocationInterceptionArgs.Value" /> property into
              the location.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.LocationInterceptionArgs.SetNewValue(System.Object)">
      <summary>
              Sets the value of the location without overwriting the <see cref="P:PostSharp.Aspects.LocationInterceptionArgs.Value" /> property.
            </summary>
      <param name="value">The value to be passed to the next node in the chain of invocation (see <see cref="P:PostSharp.Aspects.LocationInterceptionArgs.Binding" />).</param>
    </member>
    <member name="P:PostSharp.Aspects.LocationInterceptionArgs.Value">
      <summary>
              Gets or sets the location value.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.LocationInterceptionAspect">
      <summary>
            Aspect that, when applied on a location (field or property), intercepts invocations of
            the <c>Get</c> (<see cref="M:PostSharp.Aspects.LocationInterceptionAspect.OnGetValue(PostSharp.Aspects.LocationInterceptionArgs)" />) and <c>Set</c> (<see cref="M:PostSharp.Aspects.LocationInterceptionAspect.OnSetValue(PostSharp.Aspects.LocationInterceptionArgs)" />) semantics.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.LocationInterceptionAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.LocationInterceptionAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.LocationInterceptionAspect.CreateAspectConfiguration">
      <summary>
              Method invoked at build time to create a concrete <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance specifically
              for the current <see cref="T:PostSharp.Aspects.Aspect" /> type.
            </summary>
      <returns>A new and empty instance of <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />, whose concrete type corresponds to
              the concrete type of the <see cref="T:PostSharp.Aspects.Aspect" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.LocationInterceptionAspect.OnGetValue(PostSharp.Aspects.LocationInterceptionArgs)">
      <summary>
              Method invoked <i>instead</i> of the <c>Get</c> semantic of the field or property to which the current aspect is applied,
              i.e. when the value of this field or property is retrieved.
            </summary>
      <param name="args">Advice arguments.</param>
    </member>
    <member name="M:PostSharp.Aspects.LocationInterceptionAspect.OnSetValue(PostSharp.Aspects.LocationInterceptionArgs)">
      <summary>
              Method invoked <i>instead</i> of the <c>Set</c> semantic of the field or property to which the current aspect is applied,
              i.e. when the value of this field or property is changed.
            </summary>
      <param name="args">Advice arguments.</param>
    </member>
    <member name="T:PostSharp.Aspects.LocationLevelAspect">
      <summary>
            Base class for aspects defined in fields, properties, or parameters.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.LocationLevelAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.LocationLevelAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.LocationLevelAspect.CompileTimeInitialize(PostSharp.Reflection.LocationInfo,PostSharp.Aspects.AspectInfo)">
      <summary>
              Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked
              before any other build-time method.
            </summary>
      <param name="targetLocation">Location to which the current aspect is applied</param>
      <param name="aspectInfo">Reserved for future usage.</param>
    </member>
    <member name="M:PostSharp.Aspects.LocationLevelAspect.RuntimeInitialize(PostSharp.Reflection.LocationInfo)">
      <summary>
              Initializes the current aspect.
            </summary>
      <param name="locationInfo">Location to which the current aspect is applied.</param>
    </member>
    <member name="T:PostSharp.Aspects.ManagedResourceIntroductionAspect">
      <summary>
              Aspect that, when applied to an assembly, adds a custom attribute to this assembly.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.ManagedResourceIntroductionAspect.#ctor(System.String,System.Byte[])">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.ManagedResourceIntroductionAspect" />.
            </summary>
      <param name="name">Name of the managed resource.</param>
      <param name="data">Content of the managed resource.</param>
    </member>
    <member name="P:PostSharp.Aspects.ManagedResourceIntroductionAspect.Data">
      <summary>
              Gets the content of the managed resource.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.ManagedResourceIntroductionAspect.Name">
      <summary>
              Gets the name of the managed resource.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.MethodExecutionArgs">
      <summary>
              Arguments of advices of aspects of type <see cref="T:PostSharp.Aspects.OnMethodBoundaryAspect" /> and <see cref="T:PostSharp.Aspects.OnExceptionAspect" /></summary>
    </member>
    <member name="P:PostSharp.Aspects.MethodExecutionArgs.Arguments">
      <summary>
              Gets the arguments with which the method has been invoked.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.MethodExecutionArgs.Exception">
      <summary>
              Gets the exception currently flying.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.MethodExecutionArgs.FlowBehavior">
      <summary>
              Determines the control flow of the target method once the advice is exited.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.MethodExecutionArgs.Method">
      <summary>
              Gets the method being executed.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.MethodExecutionArgs.MethodExecutionTag">
      <summary>
              User-defined state information whose lifetime is linked to the
              current method execution. Aspects derived from <see cref="T:PostSharp.Aspects.IOnMethodBoundaryAspect" />
              should use this property to save state information between
              different events (<see cref="M:PostSharp.Aspects.IOnMethodBoundaryAspect.OnEntry(PostSharp.Aspects.MethodExecutionArgs)" />,
              <see cref="M:PostSharp.Aspects.IOnMethodBoundaryAspect.OnExit(PostSharp.Aspects.MethodExecutionArgs)" /> and <see cref="M:PostSharp.Aspects.IOnMethodBoundaryAspect.OnException(PostSharp.Aspects.MethodExecutionArgs)" />).
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.MethodExecutionArgs.ReturnValue">
      <summary>
              Gets or sets the method return value.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.MethodImplementationAspect">
      <summary>
            Aspect that, when applied on an abstract or <c>extern</c> method, creates an implementation for this method.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.MethodImplementationAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.MethodImplementationAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.MethodImplementationAspect.CreateAspectConfiguration">
      <summary>
              Method invoked at build time to create a concrete <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance specifically
              for the current <see cref="T:PostSharp.Aspects.Aspect" /> type.
            </summary>
      <returns>A new and empty instance of <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />, whose concrete type corresponds to
              the concrete type of the <see cref="T:PostSharp.Aspects.Aspect" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.MethodImplementationAspect.OnInvoke(PostSharp.Aspects.MethodInterceptionArgs)">
      <summary>
              Method invoked <i>instead</i> of the method to which the aspect has been applied.
            </summary>
      <param name="args">Advice arguments.</param>
    </member>
    <member name="T:PostSharp.Aspects.MethodInterceptionArgs">
      <summary>
              Arguments of advices of aspect type <see cref="T:PostSharp.Aspects.MethodInterceptionAspect" />.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.MethodInterceptionArgs.Arguments">
      <summary>
              Gets the list of arguments with which the method has been invoked.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.MethodInterceptionArgs.Binding">
      <summary>
              Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.MethodInterceptionArgs.Invoke(PostSharp.Aspects.Arguments)">
      <summary>
              Invokes the method that has been intercepted by calling the next node in the chain of invocation with given arguments,
              without affecting the property <see cref="P:PostSharp.Aspects.MethodInterceptionArgs.ReturnValue" />.
            </summary>
      <param name="arguments">Arguments passed to the intercepted method.</param>
      <returns>Value returned by the intercepted method.</returns>
    </member>
    <member name="P:PostSharp.Aspects.MethodInterceptionArgs.Method">
      <summary>
              Gets the method being executed.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.MethodInterceptionArgs.Proceed">
      <summary>
              Proceeds with invocation of the method that has been intercepted by calling the next node in the chain of invocation, 
              passing the current <see cref="P:PostSharp.Aspects.MethodInterceptionArgs.Arguments" /> to that method and 
              storing its return value into the property <see cref="P:PostSharp.Aspects.MethodInterceptionArgs.ReturnValue" />.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.MethodInterceptionArgs.ReturnValue">
      <summary>
              Gets or sets the return value of the method.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.MethodInterceptionAspect">
      <summary>
            Aspect that, when applied on a method, intercepts invocations of this method.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.MethodInterceptionAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.MethodInterceptionAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.MethodInterceptionAspect.CreateAspectConfiguration">
      <summary>
              Method invoked at build time to create a concrete <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance specifically
              for the current <see cref="T:PostSharp.Aspects.Aspect" /> type.
            </summary>
      <returns>A new and empty instance of <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />, whose concrete type corresponds to
              the concrete type of the <see cref="T:PostSharp.Aspects.Aspect" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.MethodInterceptionAspect.OnInvoke(PostSharp.Aspects.MethodInterceptionArgs)">
      <summary>
              Method invoked <i>instead</i> of the method to which the aspect has been applied.
            </summary>
      <param name="args">Advice arguments.</param>
    </member>
    <member name="T:PostSharp.Aspects.MethodLevelAspect">
      <summary>
            Base class for all aspects applied on methods.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.MethodLevelAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.MethodLevelAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.MethodLevelAspect.CompileTimeInitialize(System.Reflection.MethodBase,PostSharp.Aspects.AspectInfo)">
      <summary>
              Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked
              before any other build-time method.
            </summary>
      <param name="method">Method to which the current aspect is applied</param>
      <param name="aspectInfo">Reserved for future usage.</param>
    </member>
    <member name="M:PostSharp.Aspects.MethodLevelAspect.RuntimeInitialize(System.Reflection.MethodBase)">
      <summary>
              Initializes the current aspect.
            </summary>
      <param name="method">Method to which the current aspect is applied.</param>
    </member>
    <member name="T:PostSharp.Aspects.OnExceptionAspect">
      <summary>
            Aspect that, when applied to a method, defines an exception
            handler around the whole method and calls a custom method in this exception
            handler.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.OnExceptionAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.OnExceptionAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.OnExceptionAspect.CreateAspectConfiguration">
      <summary>
              Method invoked at build time to create a concrete <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance specifically
              for the current <see cref="T:PostSharp.Aspects.Aspect" /> type.
            </summary>
      <returns>A new and empty instance of <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />, whose concrete type corresponds to
              the concrete type of the <see cref="T:PostSharp.Aspects.Aspect" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.OnExceptionAspect.GetExceptionType(System.Reflection.MethodBase)">
      <summary>
              Gets the type of exception handled by this aspect.
            </summary>
      <param name="targetMethod">Method to which the current aspect is applied.</param>
      <returns>The type (derived from <see cref="T:System.Exception" />) of exceptions handled
              by this aspect.</returns>
    </member>
    <member name="M:PostSharp.Aspects.OnExceptionAspect.OnException(PostSharp.Aspects.MethodExecutionArgs)">
      <summary>
              Method executed <b>after</b> the body of methods to which this aspect is applied,
              in case that the method resulted with an exception (i.e., in a <c>catch</c> block).
            </summary>
      <param name="args">Advice arguments.</param>
    </member>
    <member name="M:PostSharp.Aspects.OnExceptionAspect.SetAspectConfiguration(PostSharp.Aspects.Configuration.AspectConfiguration,System.Reflection.MethodBase)">
      <summary>
              Method invoked at build time to set up an <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> object according to the current 
              <see cref="T:PostSharp.Aspects.Aspect" /> instance and a specified target element of the current aspect.
            </summary>
      <param name="aspectConfiguration">The <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance previously returned  by the
              <see cref="M:PostSharp.Aspects.Aspect.CreateAspectConfiguration" /> method.</param>
      <param name="targetMethod">Method to which the current aspect has been applied.</param>
    </member>
    <member name="T:PostSharp.Aspects.OnMethodBoundaryAspect">
      <summary>
            Aspect that, when applied to a method defined in the current assembly, inserts a piece
            of code before and after the body of these methods.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.OnMethodBoundaryAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.OnMethodBoundaryAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.OnMethodBoundaryAspect.CreateAspectConfiguration">
      <summary>
              Method invoked at build time to create a concrete <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance specifically
              for the current <see cref="T:PostSharp.Aspects.Aspect" /> type.
            </summary>
      <returns>A new and empty instance of <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />, whose concrete type corresponds to
              the concrete type of the <see cref="T:PostSharp.Aspects.Aspect" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.OnMethodBoundaryAspect.OnEntry(PostSharp.Aspects.MethodExecutionArgs)">
      <summary>
              Method executed <b>before</b> the body of methods to which this aspect is applied.
            </summary>
      <param name="args">Event arguments specifying which method
              is being executed, which are its arguments, and how should the execution continue
              after the execution of <see cref="M:PostSharp.Aspects.IOnMethodBoundaryAspect.OnEntry(PostSharp.Aspects.MethodExecutionArgs)" />.</param>
    </member>
    <member name="M:PostSharp.Aspects.OnMethodBoundaryAspect.OnException(PostSharp.Aspects.MethodExecutionArgs)">
      <summary>
              Method executed <b>after</b> the body of methods to which this aspect is applied,
              in case that the method resulted with an exception.
            </summary>
      <param name="args">Event arguments specifying which method
              is being executed and which are its arguments.</param>
    </member>
    <member name="M:PostSharp.Aspects.OnMethodBoundaryAspect.OnExit(PostSharp.Aspects.MethodExecutionArgs)">
      <summary>
              Method executed <b>after</b> the body of methods to which this aspect is applied,
              even when the method exists with an exception (this method is invoked from
              the <c>finally</c> block).
            </summary>
      <param name="args">Event arguments specifying which method
              is being executed and which are its arguments.</param>
    </member>
    <member name="M:PostSharp.Aspects.OnMethodBoundaryAspect.OnSuccess(PostSharp.Aspects.MethodExecutionArgs)">
      <summary>
              Method executed <b>after</b> the body of methods to which this aspect is applied,
              but only when the method successfully returns (i.e. when no exception flies out
              the method.).
            </summary>
      <param name="args">Event arguments specifying which method
              is being executed and which are its arguments.</param>
    </member>
    <member name="T:PostSharp.Aspects.TypeIdentity">
      <summary>
              Wraps a <see cref="P:PostSharp.Aspects.TypeIdentity.Type" /> or a type name.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.TypeIdentity.FromType(System.Type)">
      <summary>
              Wraps a <see cref="P:PostSharp.Aspects.TypeIdentity.Type" /> into a <see cref="T:PostSharp.Aspects.TypeIdentity" />.
            </summary>
      <param name="type">A <see cref="P:PostSharp.Aspects.TypeIdentity.Type" />.</param>
      <returns>A <see cref="T:PostSharp.Aspects.TypeIdentity" /> wrapping <paramref cref="F:PostSharp.Aspects.TypeIdentity.type" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.TypeIdentity.FromTypeName(System.String)">
      <summary>
              Wraps a type name into a <see cref="T:PostSharp.Aspects.TypeIdentity" />.
            </summary>
      <param name="typeName">The type name.</param>
      <returns>A <see cref="T:PostSharp.Aspects.TypeIdentity" /> wrapping the type name.</returns>
    </member>
    <member name="M:PostSharp.Aspects.TypeIdentity.FromTypeNames(System.String[])">
      <summary>
              Wraps an array of type names into an array of <see cref="T:PostSharp.Aspects.TypeIdentity" />.
            </summary>
      <param name="typeNames">An array of type names.</param>
      <returns>An array of <see cref="T:PostSharp.Aspects.TypeIdentity" /> wrapping <paramref name="typeNames" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.TypeIdentity.FromTypes(System.Type[])">
      <summary>
              Wraps an array of <see cref="P:PostSharp.Aspects.TypeIdentity.Type" /> into an array of <see cref="T:PostSharp.Aspects.TypeIdentity" />.
            </summary>
      <param name="types">An array of <see cref="P:PostSharp.Aspects.TypeIdentity.Type" />.</param>
      <returns>An array of <see cref="T:PostSharp.Aspects.TypeIdentity" /> wrapping <paramref name="types" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.TypeIdentity.ToType">
      <summary>
              Converts a <see cref="T:PostSharp.Aspects.TypeIdentity" /> into a <see cref="T:System.Type" />.
            </summary>
      <returns>
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;returns&gt; documentation for "M:PostSharp.Aspects.TypeIdentity.ToType"]</p>
      </returns>
    </member>
    <member name="P:PostSharp.Aspects.TypeIdentity.Type">
      <summary>
              Gets the wrapped <see cref="P:PostSharp.Aspects.TypeIdentity.Type" />, or <c>null</c> it the <see cref="P:PostSharp.Aspects.TypeIdentity.TypeName" /> property is set.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.TypeIdentity.TypeName">
      <summary>
              Gets the wrapped type name, or <c>null</c> it the <see cref="P:PostSharp.Aspects.TypeIdentity.Type" /> property is set.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.TypeLevelAspect">
      <summary>
            Base class for all aspects applied on types.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.TypeLevelAspect.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.TypeLevelAspect" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.TypeLevelAspect.CompileTimeInitialize(System.Type,PostSharp.Aspects.AspectInfo)">
      <summary>
              Method invoked at build time to initialize the instance fields of the current aspect. This method is invoked
              before any other build-time method.
            </summary>
      <param name="type">Type to which the current aspect is applied</param>
      <param name="aspectInfo">Reserved for future usage.</param>
    </member>
    <member name="M:PostSharp.Aspects.TypeLevelAspect.RuntimeInitialize(System.Type)">
      <summary>
              Initializes the current aspect.
            </summary>
      <param name="type">Type to which the current aspect is applied.</param>
    </member>
    <member name="T:PostSharp.Aspects.Advices.Advice">
      <summary>
              Base class for all custom attributes representing an advice.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.Advice.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.Advice" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.CopyCustomAttributesAttribute">
      <summary>
              Custom attribute that, when applied on an aspect class, requires custom
              attributes present on the aspect class to be copied to the target of this class.
              When applied on an introduced member (see <see cref="T:PostSharp.Aspects.Advices.IntroduceMemberAttribute" />),
              this custom attribute requires custom attributes present on the aspect member
              to be copied to the introduced member.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.CopyCustomAttributesAttribute.#ctor(System.Type)">
      <summary>
              Requires custom attributes present on the aspect class or aspect class member
              to be copied to the aspect target or to the introduced member, respectively.
            </summary>
      <param name="type">Base type of custom attributes to be copied.</param>
    </member>
    <member name="M:PostSharp.Aspects.Advices.CopyCustomAttributesAttribute.#ctor(System.Type[])">
      <summary>
              Requires custom attributes present on the aspect class or aspect class member
              to be copied to the aspect target or to the introduced member, respectively.
            </summary>
      <param name="types">Base types of custom attributes to be copied.</param>
    </member>
    <member name="P:PostSharp.Aspects.Advices.CopyCustomAttributesAttribute.OverrideAction">
      <summary>
              Determines what should happen when a custom attribute of the same
              type is already present on the target declaration.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.CopyCustomAttributesAttribute.Types">
      <summary>
              Gets the list of custom attribute types to be copied.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.CustomAttributeOverrideAction">
      <summary>
              Behavior of <see cref="T:PostSharp.Aspects.Advices.CopyCustomAttributesAttribute" /> when a custom
              attribute of the same type already exists on the target declaration.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.CustomAttributeOverrideAction.Default">
      <summary>
              Default (<see cref="F:PostSharp.Aspects.Advices.CustomAttributeOverrideAction.Fail" />).
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.CustomAttributeOverrideAction.Fail">
      <summary>
              Emits an error message.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.CustomAttributeOverrideAction.Ignore">
      <summary>
              Silently ignore this custom attribute (does not copy it, without
              error message).
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.CustomAttributeOverrideAction.Add">
      <summary>
              Adds a new copy (possibly duplicate) of the custom attribute.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.CustomAttributeOverrideAction.MergeAddProperty">
      <summary>
              Merges the existing custom attribute with the template custom attribute
              by adding properties and fields. If the existing custom attribute defines
              the same properties and fields as the template custom attribute, 
              they are not overridden.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.CustomAttributeOverrideAction.MergeReplaceProperty">
      <summary>
              Merges the exising custom attribute with the template custom attribute
              by adding and replacing properties and fields. If the existing custom
              attribute defines the same properties and fields as the template custom
              attribute, they are replaced by the values defined in the template
              custom attribute.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.Event`1">
      <summary>
            Exposes the semantics of an event for use with the <see cref="T:PostSharp.Aspects.Advices.ImportMemberAttribute" /> aspect extension.
            </summary>
      <typeparam name="TDelegate">Handler type (derived from <see cref="T:System.Delegate" />).</typeparam>
    </member>
    <member name="P:PostSharp.Aspects.Advices.Event`1.Add">
      <summary>
              Gets a delegate enabling to invoke the <b>add</b> accessor
              of the imported event.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.Event`1.Remove">
      <summary>
              Gets a delegate enabling to invoke the <b>remove</b> accessor
              of the imported event.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.EventAccessor`1">
      <summary>
              Defines the signature of methods implementing the <see cref="P:PostSharp.Aspects.Advices.Event`1.Add" />
              and <see cref="P:PostSharp.Aspects.Advices.Event`1.Remove" /> semantics of an event.
            </summary>
      <param name="delegate">Handler.</param>
      <typeparam name="TDelegate">Handler type (derived from <see cref="T:System.Delegate" />).</typeparam>
    </member>
    <member name="T:PostSharp.Aspects.Advices.GroupingAdvice">
      <summary>
              Base class for all advices that are possibly composed of
              multiple advices that can be grouped together using the <see cref="P:PostSharp.Aspects.Advices.GroupingAdvice.Master" />
              property.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.GroupingAdvice.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.GroupingAdvice" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.GroupingAdvice.Master">
      <summary>
              Name of the master advice method. If this property is not set,
              the current method is itself the master of the group. Only
              master methods can define selectors (<see cref="T:PostSharp.Aspects.Advices.Pointcut" />)
              and dependencies (<see cref="T:PostSharp.Aspects.Dependencies.AspectDependencyAttribute" />).
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.ImportMemberAttribute">
      <summary>
              Custom attribute that, when applied to an instance field of an aspect class, determines
              that this field should be bound to a method, event or property, of the
              target class of this aspect. Valid types for fields are
              a concrete <see cref="T:System.Delegate" /> (to bind to a method),
              <see cref="T:PostSharp.Aspects.Advices.Property`1" /> or <see cref="T:PostSharp.Aspects.Advices.Property`2" />
              (to bind to a property), or <see cref="T:PostSharp.Aspects.Advices.Event`1" /> (to bind to an event).
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.ImportMemberAttribute.#ctor(System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Advices.ImportMemberAttribute" />.
            </summary>
      <param name="memberName">Name of the member to import.</param>
    </member>
    <member name="P:PostSharp.Aspects.Advices.ImportMemberAttribute.IsRequired">
      <summary>
              Determines whether a build time error must be issued if the member to be
              imported is absent. If <c>false</c>, the binding field will be <c>null</c>
              in case the imported member is absent.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.ImportMemberAttribute.MemberName">
      <summary>
              Name of the imported member.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.ImportMemberAttribute.Order">
      <summary>
              Determines when the member should be imported: either before (<see cref="F:PostSharp.Aspects.Advices.ImportMemberOrder.BeforeIntroductions" />)
              or after (<see cref="F:PostSharp.Aspects.Advices.ImportMemberOrder.AfterIntroductions" />) members have been introduced by the current aspect.
              Default is <see cref="F:PostSharp.Aspects.Advices.ImportMemberOrder.BeforeIntroductions" />.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.ImportMemberOrder">
      <summary>
              Enumeration of moments when members should be imported into an aspect.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.ImportMemberOrder.Default">
      <summary>
        <see cref="F:PostSharp.Aspects.Advices.ImportMemberOrder.AfterIntroductions" />
      </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.ImportMemberOrder.BeforeIntroductions">
      <summary>
              Before the aspect introduces its own members. This is similar to calling the overridden method using the
              <c>base</c> keyword in C#. The overridden method implementation is always selected, even if the method
              is virtual.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.ImportMemberOrder.AfterIntroductions">
      <summary>
              After the aspect introduces its own members. Note that importing a member introduced by the current
              aspect makes sense only if the member has been introduced as virtual; in this case, the
              the imported member is dynamically resolved using the virtual table of the target object.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.InterfaceOverrideAction">
      <summary>
              Enumeration of actions to be overtaken when an interface that should be introduced into a type is already
              implemented by that type.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Default">
      <summary>
        <see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Fail" />.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Fail">
      <summary>
              Fails and emits an error message.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Ignore">
      <summary>
              Silently ignore this interface (does not introduct it).
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.IntroduceInterfaceAttribute">
      <summary>
              Custom attribute that, when applied to an aspect class, specifies that the aspect should
              introduce a given interface into the type to which the aspect is applied.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.IntroduceInterfaceAttribute.#ctor(System.Type)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Advices.IntroduceInterfaceAttribute" />.
            </summary>
      <param name="interfaceType">Interface that should be introduced into the types
              to which the aspect is applied.</param>
    </member>
    <member name="P:PostSharp.Aspects.Advices.IntroduceInterfaceAttribute.AncestorOverrideAction">
      <summary>
              Specifies the action (<see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Fail" /> or <see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Ignore" />)
              to be overtaken when an <i>ancestor</i> of the interface specified in the constructor of this custom attribute
              is already implemented by the type to which the current aspect is applied.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.IntroduceInterfaceAttribute.IsProtected">
      <summary>
              Determines whether the interface should be exposed indirectly through the 
              <see cref="T:PostSharp.Aspects.IProtectedInterface`1" /> interface. If <c>false</c>, the interface
              will be implemented directly by the type.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.IntroduceInterfaceAttribute.OverrideAction">
      <summary>
              Specifies the action (<see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Fail" /> or <see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Ignore" />)
              to be overtaken when the interface specified in the constructor of this custom attribute
              is already implemented by the type to which the current aspect is applied.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.IntroduceMemberAttribute">
      <summary>
              Custom attribute that, when applied on a method, event or property of an aspect class, specifies
              that this method, event or property should be introduced into the types to which the aspect is applied.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.IntroduceMemberAttribute.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.IntroduceMemberAttribute" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.IntroduceMemberAttribute.IsIsVirtualSpecified">
      <summary>
              Determines whether the <see cref="P:PostSharp.Aspects.Advices.IntroduceMemberAttribute.IsVirtual" /> property has been specified.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.IntroduceMemberAttribute.IsVirtual">
      <summary>
              Determines whether the introduced member should be virtual.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.IntroduceMemberAttribute.OverrideAction">
      <summary>
              Determines the action to be overtaken when the member to be introduced already exists
              in the type to which the aspect is applied, or to a base type.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.IntroduceMemberAttribute.Visibility">
      <summary>
              Determines the visibility (<see cref="F:PostSharp.Reflection.Visibility.Public" />, (<see cref="F:PostSharp.Reflection.Visibility.Family" />, ...)
              of the introduced member.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.MemberOverrideAction">
      <summary>
              Enumeration of actions to be overtaken by the <see cref="T:PostSharp.Aspects.Advices.IntroduceMemberAttribute" /> aspect extension
              when the member to be introduced already exists in the aspect target type or its base type.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.MemberOverrideAction.Default">
      <summary>
        <see cref="F:PostSharp.Aspects.Advices.MemberOverrideAction.Fail" />
      </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.MemberOverrideAction.Fail">
      <summary>
              Emits a build time error.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.MemberOverrideAction.Ignore">
      <summary>
              Silently ignore the member introduction.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.MemberOverrideAction.OverrideOrFail">
      <summary>
              Tries to override the member, and fails if it is impossible (i.e. if the existing member is defined
              in a base type and is sealed or non-virtual).
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Advices.MemberOverrideAction.OverrideOrIgnore">
      <summary>
              Tries to override the member, and silently ignore if it is impossible (i.e. if the existing member is defined
              in a base type and is sealed or non-virtual).
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.MethodPointcut">
      <summary>
              Custom attribute that, when applied on an advice method, specifies the name of
              the method that will be invoked at build-time to return the set of elements of code
              to which the advice applies.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.MethodPointcut.#ctor(System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Advices.MethodPointcut" />.
            </summary>
      <param name="methodName">Name of the method returning the set of targets. This method should have
              a specific signature as discussed in the <see cref="T:PostSharp.Aspects.Advices.MethodPointcut">class documentation</see>.</param>
    </member>
    <member name="P:PostSharp.Aspects.Advices.MethodPointcut.MethodName">
      <summary>
              Gets the name of the method returning the set of code elements.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.MulticastPointcut">
      <summary>
              Custom attribute that, when applied on an advice method, specifies to which elements of
              code this advice applies, based on the kind, name and attributes of code elements.
              Works similarly as <see cref="T:PostSharp.Extensibility.MulticastAttribute" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.MulticastPointcut.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.MulticastPointcut" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.MulticastPointcut.Attributes">
      <summary>
              Gets or sets the visibilities, scopes, virtualities, and implementation
              of members to which this attribute applies.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.MulticastPointcut.MemberName">
      <summary>
              Gets or sets the expression specifying to which members 
              the aspect extension applies.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.MulticastPointcut.Targets">
      <summary>
              Gets or sets the kind of elements to which this aspect extension applies.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.OnEventAddHandlerAdvice">
      <summary>
              Custom attribute that, when applied on a method of an aspect class, specifies
              that this method is an advice having the same semantics as <see cref="M:PostSharp.Aspects.IEventInterceptionAspect.OnAddHandler(PostSharp.Aspects.EventInterceptionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.OnEventAddHandlerAdvice.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.OnEventAddHandlerAdvice" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.OnEventInvokeHandlerAdvice">
      <summary>
              Custom attribute that, when applied on a method of an aspect class, specifies
              that this method is an advice having the same semantics as <see cref="M:PostSharp.Aspects.IEventInterceptionAspect.OnInvokeHandler(PostSharp.Aspects.EventInterceptionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.OnEventInvokeHandlerAdvice.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.OnEventInvokeHandlerAdvice" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.OnEventRemoveHandlerAdvice">
      <summary>
              Custom attribute that, when applied on a method of an aspect class, specifies that this method is an advice
              having the same semantics as <see cref="M:PostSharp.Aspects.IEventInterceptionAspect.OnRemoveHandler(PostSharp.Aspects.EventInterceptionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.OnEventRemoveHandlerAdvice.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.OnEventRemoveHandlerAdvice" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.OnLocationGetValueAdvice">
      <summary>
              Custom attribute that, when applied on a method of an aspect class, specifies
              that this method is an advice having the same semantics as <see cref="M:PostSharp.Aspects.ILocationInterceptionAspect.OnGetValue(PostSharp.Aspects.LocationInterceptionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.OnLocationGetValueAdvice.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.OnLocationGetValueAdvice" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.OnLocationSetValueAdvice">
      <summary>
              Custom attribute that, when applied on a method of an aspect class, specifies
              that this method is an advice having the same semantics as <see cref="M:PostSharp.Aspects.ILocationInterceptionAspect.OnSetValue(PostSharp.Aspects.LocationInterceptionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.OnLocationSetValueAdvice.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.OnLocationSetValueAdvice" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.OnMethodEntryAdvice">
      <summary>
              Custom attribute that, when applied on a method of an aspect class, specifies
              that this method is an advice having the same semantics as <see cref="M:PostSharp.Aspects.OnMethodBoundaryAspect.OnEntry(PostSharp.Aspects.MethodExecutionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.OnMethodEntryAdvice.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.OnMethodEntryAdvice" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.OnMethodExceptionAdvice">
      <summary>
              Custom attribute that, when applied on a method of an aspect class, specifies
              that this method is an advice having the same semantics as <see cref="M:PostSharp.Aspects.OnMethodBoundaryAspect.OnException(PostSharp.Aspects.MethodExecutionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.OnMethodExceptionAdvice.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.OnMethodExceptionAdvice" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.OnMethodExitAdvice">
      <summary>
              Custom attribute that, when applied on a method of an aspect class, specifies
              that this method is an advice having the same semantics as <see cref="M:PostSharp.Aspects.OnMethodBoundaryAspect.OnExit(PostSharp.Aspects.MethodExecutionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.OnMethodExitAdvice.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.OnMethodExitAdvice" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.OnMethodInvokeAdvice">
      <summary>
              Custom attribute that, when applied on a method of an aspect class, specifies
              that this method is an advice having the same semantics as <see cref="M:PostSharp.Aspects.IMethodInterceptionAspect.OnInvoke(PostSharp.Aspects.MethodInterceptionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.OnMethodInvokeAdvice.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.OnMethodInvokeAdvice" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.OnMethodSuccessAdvice">
      <summary>
              Custom attribute that, when applied on a method of an aspect class, specifies
              that this method is an advice having the same semantics as <see cref="M:PostSharp.Aspects.OnMethodBoundaryAspect.OnSuccess(PostSharp.Aspects.MethodExecutionArgs)" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.OnMethodSuccessAdvice.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.OnMethodSuccessAdvice" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.Pointcut">
      <summary>
              Custom attribute, typically accompanying an advice, specifying
              to which code elements the advice applies.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.Pointcut.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.Pointcut" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.Property`1">
      <summary>
            Exposes the semantics of a parameterless property for use
            with the <see cref="T:PostSharp.Aspects.Advices.ImportMemberAttribute" /> aspect extension.
            </summary>
      <typeparam name="TValue">Property value type.</typeparam>
    </member>
    <member name="P:PostSharp.Aspects.Advices.Property`1.Get">
      <summary>
              Gets a delegate enabling to invoke the <b>get</b> accessor
              of the imported property.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.Property`1.Set">
      <summary>
              Gets a delegate enabling to invoke the <b>set</b> accessor
              of the imported property.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.Property`2">
      <summary>
            Mimics the semantics of a property accepting a single index parameter, for use
            with the <see cref="T:PostSharp.Aspects.Advices.ImportMemberAttribute" /> aspect extension.
            </summary>
      <typeparam name="TIndex">Property index type.</typeparam>
      <typeparam name="TValue">Property value type.</typeparam>
    </member>
    <member name="P:PostSharp.Aspects.Advices.Property`2.Get">
      <summary>
              Gets a delegate enabling to invoke the <b>get</b> accessor
              of the imported property.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Advices.Property`2.Set">
      <summary>
              Gets a delegate enabling to invoke the <b>set</b> accessor
              of the imported property.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Advices.PropertyGetter`1">
      <summary>
              Defines the signature of methods implementing the <see cref="P:PostSharp.Aspects.Advices.Property`1.Get" />
              semantic of a parameterless property.
            </summary>
      <typeparam name="TValue">Property value type.</typeparam>
      <returns>The property value.</returns>
    </member>
    <member name="T:PostSharp.Aspects.Advices.PropertyGetter`2">
      <summary>
              Defines the signature of methods implementing the <see cref="P:PostSharp.Aspects.Advices.Property`2.Get" />
              semantic of a property with a single index parameter.
            </summary>
      <param name="index">Index.</param>
      <typeparam name="TValue">Property value type.</typeparam>
      <typeparam name="TIndex">Property index type.</typeparam>
      <returns>The property value.</returns>
    </member>
    <member name="T:PostSharp.Aspects.Advices.PropertySetter`1">
      <summary>
              Defines the signature of methods implementing the <see cref="P:PostSharp.Aspects.Advices.Property`1.Set" />
              semantic of a parameterless property.
            </summary>
      <param name="value">The property value.</param>
      <typeparam name="TValue">Property value type.</typeparam>
    </member>
    <member name="T:PostSharp.Aspects.Advices.PropertySetter`2">
      <summary>
              Defines the signature of methods implementing the <see cref="P:PostSharp.Aspects.Advices.Property`2.Set" />
              semantic of a property with a single index parameter.
            </summary>
      <param name="index">Index.</param>
      <param name="value">The property value.</param>
      <typeparam name="TValue">Property value type.</typeparam>
      <typeparam name="TIndex">Property index type.</typeparam>
    </member>
    <member name="T:PostSharp.Aspects.Advices.SelfPointcut">
      <summary>
        <see cref="T:PostSharp.Aspects.Advices.Pointcut" /> that selects exactly the aspect target.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Advices.SelfPointcut.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Advices.SelfPointcut" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.AspectConfiguration">
      <summary>
              Configuration of an <see cref="T:PostSharp.Aspects.IAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.AspectConfiguration.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.AspectConfiguration.AspectPriority">
      <summary>
              Gets or sets the aspect priority. Aspects with smaller priority are processed first. The default priority is zero.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.AspectConfiguration.Dependencies">
      <summary>
              Gets or sets the collection of dependencies.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.AspectConfiguration.SerializerType">
      <summary>
              Gets or sets the type of the serializer that will be used
              to configure the current aspect.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.AspectConfigurationAttribute">
      <summary>
              Configures an aspect of type <see cref="T:PostSharp.Aspects.IAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.AspectConfigurationAttribute.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.AspectConfigurationAttribute" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.AspectConfigurationAttribute.AspectPriority">
      <summary>
              Gets or sets the weaving priority of the aspect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.AspectConfigurationAttribute.CreateAspectConfiguration">
      <summary>
              Creates a concrete <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance specifically for the current 
              <see cref="T:PostSharp.Aspects.Configuration.AspectConfigurationAttribute" /> type.
            </summary>
      <returns>A new and empty instance of <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" />, whose concrete type corresponds to
              the concrete type of the <see cref="T:PostSharp.Aspects.Configuration.AspectConfigurationAttribute" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.AspectConfigurationAttribute.GetAspectConfiguration">
      <summary>
              Gets the <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> corresponding to the current custom attribute.
            </summary>
      <returns>An <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> corresponding to the current custom attribute.</returns>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.AspectConfigurationAttribute.SerializerType">
      <summary>
              Gets or sets the <see cref="T:System.Type" /> of the serializer that will be used
              to configure the current aspect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.AspectConfigurationAttribute.SetAspectConfiguration(PostSharp.Aspects.Configuration.AspectConfiguration)">
      <summary>
              Sets up an <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> object according to the current  custom attribute instance.
            </summary>
      <param name="aspectConfiguration">The <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance previously returned  by the
              <see cref="M:PostSharp.Aspects.Configuration.AspectConfigurationAttribute.CreateAspectConfiguration" /> method.</param>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.CompositionAspectConfiguration">
      <summary>
              Configuration of aspects of type <see cref="T:PostSharp.Aspects.ICompositionAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.CompositionAspectConfiguration" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.AncestorOverrideAction">
      <summary>
              Specifies the action (<see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Fail" /> or <see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Ignore" />)
              to be overtaken when an <i>ancestor</i> of one of the interfaces specified by <see cref="P:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.PublicInterfaces" />
              is already implemented by the type to which the current aspect is applied.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.GenerateImplementationAccessor">
      <summary>
              Determines whether the interface <see cref="T:PostSharp.Aspects.IComposed`1" /> should be introduced into the type to which the aspect
              is applied for each interface specified by the <see cref="P:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.PublicInterfaces" /> property.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.NonSerializedImplementation">
      <summary>
              Determines whether the field containing the interface implementation (and storing the object returned by
              <see cref="M:PostSharp.Aspects.ICompositionAspect.CreateImplementationObject(PostSharp.Aspects.AdviceArgs)" />) should be excluded from serialization by <see cref="T:System.Runtime.Serialization.Formatters.Binary.BinaryFormatter" />.
              The same effect is typically obtained by applying the <see cref="T:System.NonSerializedAttribute" /> custom attribute to the field.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.OverrideAction">
      <summary>
              Specifies the action (<see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Fail" /> or <see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Ignore" />)
              to be overtaken when one of the interfaces specified by <see cref="P:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.PublicInterfaces" /> or <see cref="P:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.ProtectedInterfaces" />
              is already implemented by the type to which the aspect is applied.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.ProtectedInterfaces">
      <summary>
              Gets or sets the array of interfaces to be introduced indirectly into the target type of the aspect. These
              interfaces will become accessible through the <see cref="T:PostSharp.Aspects.IProtectedInterface`1" /> interface.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CompositionAspectConfiguration.PublicInterfaces">
      <summary>
              Gets or sets the array of interfaces that should be introduced publicly into the target type of the aspect.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute">
      <summary>
              Custom attribute that, when applied on a class implementing <see cref="T:PostSharp.Aspects.ICompositionAspect" />,
              defines the declarative configuration of that aspect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute.AncestorOverrideAction">
      <summary>
              Specifies the action (<see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Fail" /> or <see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Ignore" />)
              to be overtaken when an <i>ancestor</i> of one of the interfaces specified by <see cref="P:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute.PublicInterfaces" />
              is already implemented by the type to which the current aspect is applied.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute.GenerateImplementationAccessor">
      <summary>
              Determines whether the interface <see cref="T:PostSharp.Aspects.IComposed`1" /> should be introduced into the type to which the aspect
              is applied for each interface specified by the <see cref="P:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute.PublicInterfaces" /> property.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute.NonSerializedImplementation">
      <summary>
              Determines whether the field containing the interface implementation (and storing the object returned by
              <see cref="M:PostSharp.Aspects.ICompositionAspect.CreateImplementationObject(PostSharp.Aspects.AdviceArgs)" />) should be excluded from serialization by <see cref="T:System.Runtime.Serialization.Formatters.Binary.BinaryFormatter" />.
              The same effect is typically obtained by applying the <see cref="T:System.NonSerializedAttribute" /> custom attribute to the field.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute.OverrideAction">
      <summary>
              Specifies the action (<see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Fail" /> or <see cref="F:PostSharp.Aspects.Advices.InterfaceOverrideAction.Ignore" />)
              to be overtaken when one of the interfaces specified by <see cref="P:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute.PublicInterfaces" /> or <see cref="P:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute.ProtectedInterfaces" />
              is already implemented by the type to which the aspect is applied.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute.ProtectedInterfaces">
      <summary>
              Gets or sets the array of type names of interfaces to be introduced indirectly into the target type of the aspect. These
              interfaces will become accessible through the <see cref="T:PostSharp.Aspects.IProtectedInterface`1" /> interface.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CompositionAspectConfigurationAttribute.PublicInterfaces">
      <summary>
              Gets or sets the array of type names of interfaces that should be introduced publicly into
              the target type of the aspect.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.CustomAttributeIntroductionAspectConfiguration">
      <summary>
              Configuration of aspects of type <see cref="T:PostSharp.Aspects.CustomAttributeIntroductionAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.CustomAttributeIntroductionAspectConfiguration.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.CustomAttributeIntroductionAspectConfiguration" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.CustomAttributeIntroductionAspectConfiguration.ObjectConstruction">
      <summary>
              Gets or sets the construction of the custom attribute that must be applied to the target of this aspect.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.EventInterceptionAspectConfiguration">
      <summary>
              Configuration of aspects of type <see cref="T:PostSharp.Aspects.IEventInterceptionAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.EventInterceptionAspectConfiguration.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.EventInterceptionAspectConfiguration" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.EventInterceptionAspectConfigurationAttribute">
      <summary>
              Custom attribute that, when applied on a class implementing <see cref="T:PostSharp.Aspects.IEventInterceptionAspect" />,
              defines the declarative configuration of that aspect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.EventInterceptionAspectConfigurationAttribute.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.EventInterceptionAspectConfigurationAttribute" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.ExternalAspectConfiguration">
      <summary>
              Configuration of aspects of type <see cref="T:PostSharp.Aspects.IExternalAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.ExternalAspectConfiguration.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.ExternalAspectConfiguration" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.ExternalAspectConfiguration.ImplementationTypeName">
      <summary>
              Gets or sets the type implementing the aspect. This type must implement the interface <see cref="T:PostSharp.Aspects.IExternalAspectImplementation" />.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.ExternalAspectConfigurationAttribute">
      <summary>
              Specifies the type name of the implementation of external aspects (<see cref="T:PostSharp.Aspects.IExternalAspect" />).
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.ExternalAspectConfigurationAttribute.#ctor">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Configuration.ExternalAspectConfigurationAttribute" />.
              In user code, use the <see cref="M:PostSharp.Aspects.Configuration.ExternalAspectConfigurationAttribute.#ctor(System.String)" />
              constructor instead of this one.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.ExternalAspectConfigurationAttribute.#ctor(System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Configuration.ExternalAspectConfigurationAttribute" />.
            </summary>
      <param name="implementationTypeName">Assembly-qualified name of the implementation
              type. This type should implement the <see cref="T:PostSharp.Aspects.IExternalAspectImplementation" />
              interface.</param>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.ExternalAspectConfigurationAttribute.ImplementationTypeName">
      <summary>
              Gets the assembly-qualified name of the implementation  type.
              This type must implement the <see cref="T:PostSharp.Aspects.IExternalAspectImplementation" /> interface.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.LocationInterceptionAspectConfiguration">
      <summary>
              Configuration of aspects of type <see cref="T:PostSharp.Aspects.ILocationLevelAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.LocationInterceptionAspectConfiguration.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.LocationInterceptionAspectConfiguration" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.LocationInterceptionAspectConfigurationAttribute">
      <summary>
              Custom attribute that, when applied on a class implementing <see cref="T:PostSharp.Aspects.ILocationInterceptionAspect" />,
              defines the declarative configuration of that aspect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.LocationInterceptionAspectConfigurationAttribute.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.LocationInterceptionAspectConfigurationAttribute" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.ManagedResourceIntroductionAspectConfiguration">
      <summary>
              Configuration of aspects of type <see cref="T:PostSharp.Aspects.ManagedResourceIntroductionAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.ManagedResourceIntroductionAspectConfiguration.#ctor(System.String,System.Byte[])">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Configuration.ManagedResourceIntroductionAspectConfiguration" />.
            </summary>
      <param name="name">Name of the managed resource.</param>
      <param name="data">Content of the managed resource.</param>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.ManagedResourceIntroductionAspectConfiguration.Data">
      <summary>
              Gets the content of the managed resource.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.ManagedResourceIntroductionAspectConfiguration.Name">
      <summary>
              Gets the name of the managed resource.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.MethodInterceptionAspectConfiguration">
      <summary>
              Configuration of aspects of type <see cref="T:PostSharp.Aspects.IMethodInterceptionAspect" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.MethodInterceptionAspectConfiguration.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.MethodInterceptionAspectConfiguration" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.MethodInterceptionAspectConfigurationAttribute">
      <summary>
              Custom attribute that, when applied on a class implementing <see cref="T:PostSharp.Aspects.IMethodInterceptionAspect" />,
              defines the declarative configuration of that aspect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.MethodInterceptionAspectConfigurationAttribute.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.MethodInterceptionAspectConfigurationAttribute" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.OnExceptionAspectConfiguration">
      <summary>
              Configuration of the <see cref="T:PostSharp.Aspects.IOnExceptionAspect" /> aspect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.OnExceptionAspectConfiguration.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.OnExceptionAspectConfiguration" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.OnExceptionAspectConfiguration.ExceptionType">
      <summary>
              Gets or sets the type of exceptions that are caught by this aspect.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.OnExceptionAspectConfigurationAttribute">
      <summary>
              Custom attribute that, when applied on a class implementing <see cref="T:PostSharp.Aspects.IOnExceptionAspect" />,
              defines the configuration of that aspect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.OnExceptionAspectConfigurationAttribute.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.OnExceptionAspectConfigurationAttribute" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Configuration.OnExceptionAspectConfigurationAttribute.ExceptionType">
      <summary>
              Gets or sets the type of exceptions that are caught by this aspect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.OnExceptionAspectConfigurationAttribute.SetAspectConfiguration(PostSharp.Aspects.Configuration.AspectConfiguration)">
      <summary>
              Sets up an <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> object according to the current  custom attribute instance.
            </summary>
      <param name="aspectConfiguration">The <see cref="T:PostSharp.Aspects.Configuration.AspectConfiguration" /> instance previously returned  by the
              <see cref="M:PostSharp.Aspects.Configuration.AspectConfigurationAttribute.CreateAspectConfiguration" /> method.</param>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.OnMethodBoundaryAspectConfiguration">
      <summary>
              Configuration of the <see cref="T:PostSharp.Aspects.IOnMethodBoundaryAspect" /> aspect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.OnMethodBoundaryAspectConfiguration.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.OnMethodBoundaryAspectConfiguration" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Configuration.OnMethodBoundaryAspectConfigurationAttribute">
      <summary>
              Custom attribute that, when applied on a class implementing <see cref="T:PostSharp.Aspects.IOnMethodBoundaryAspect" />,
              defines the configuration of that aspect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Configuration.OnMethodBoundaryAspectConfigurationAttribute.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Configuration.OnMethodBoundaryAspectConfigurationAttribute" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.AdviceDependencyAttribute">
      <summary>
              Specifies an aspect dependency matching an advice of the same aspect instance.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.AdviceDependencyAttribute.#ctor(PostSharp.Aspects.Dependencies.AspectDependencyAction,PostSharp.Aspects.Dependencies.AspectDependencyPosition,System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.AdviceDependencyAttribute" /> and specifies a position.
            </summary>
      <param name="action">Dependency action.</param>
      <param name="position">Dependency position.</param>
      <param name="adviceMethodName">Name of the advice method.</param>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.AdviceDependencyAttribute.#ctor(PostSharp.Aspects.Dependencies.AspectDependencyAction,System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.AdviceDependencyAttribute" /> without specifying the position,
              implicitly set to <see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyPosition.Any" />.
            </summary>
      <param name="action">Dependency action.</param>
      <param name="adviceMethodName">Name of the advice method.</param>
    </member>
    <member name="P:PostSharp.Aspects.Dependencies.AdviceDependencyAttribute.AdviceMethodName">
      <summary>
              Gets the name of the method implementing the advice.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.AspectDependencyAction">
      <summary>
              Enumeration of the different kinds of relationships of specified by aspect dependencies.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.AspectDependencyAction.None">
      <summary>
              The dependency is ignored.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.AspectDependencyAction.Order">
      <summary>
              The dependency specifies an order relationship.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.AspectDependencyAction.Require">
      <summary>
              The depedency specifies that the current aspect or advice requires
              another aspect or advice.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.AspectDependencyAction.Conflict">
      <summary>
              The dependency specifies that the current aspect or advice
              conflicts with another aspect or advice.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.AspectDependencyAction.Commute">
      <summary>
              The dependency specifies that the current aspect or advice
              commutes with another aspect or advice.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.AspectDependencyAttribute">
      <summary>
              Base class for all custom attributes defining aspect dependencies. An aspect dependency determines the
              behavior of aspects or advices when used in conjunction with other aspects and advices.
              Aspect dependencies determine ordering, requirements, conflicts, and commutativity of aspects and advices.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.AspectDependencyAttribute.#ctor(PostSharp.Aspects.Dependencies.AspectDependencyAction)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.AspectDependencyAttribute" /> without specifying the position,
              implicitly set to <see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyPosition.Any" />.
            </summary>
      <param name="action">Dependency action.</param>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.AspectDependencyAttribute.#ctor(PostSharp.Aspects.Dependencies.AspectDependencyAction,PostSharp.Aspects.Dependencies.AspectDependencyPosition)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.AspectDependencyAttribute" /> and specifies a position.
            </summary>
      <param name="action">Dependency action.</param>
      <param name="position">Dependency position.</param>
    </member>
    <member name="P:PostSharp.Aspects.Dependencies.AspectDependencyAttribute.Action">
      <summary>
              Gets the dependency action, i.e. the kind of relationship specified by the dependency
              (<see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyAction.Order" />, <see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyAction.Require" />,
              <see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyAction.Conflict" />, or <see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyAction.Commute" />).
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Dependencies.AspectDependencyAttribute.IsWarning">
      <summary>
              If <c>true</c>, specifies that the constraint (of type <see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyAction.Require" />
              or <see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyAction.Conflict" />) should emit a warning instead of an error if not
              respected.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Dependencies.AspectDependencyAttribute.Position">
      <summary>
              Gets the position of the current dependency, i.e. actually the position of the <i>other</i>
              aspect or advices with respect to the one related to this dependency.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Dependencies.AspectDependencyAttribute.Target">
      <summary>
              Determines the target (<see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyTarget.Default" /> or <see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyTarget.Type" />)
              to which the aspect dependency apply.
            </summary>
    </member>
    <member name="P:PostSharp.Aspects.Dependencies.AspectDependencyAttribute.TargetType">
      <summary>
              Aspect type to which this dependency applies. This property is required when the
              custom attribute is applied at assembly level. It is ignored when applied on
              class or method level.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.AspectDependencyAttributeCollection">
      <summary>
              Collection of <see cref="T:PostSharp.Aspects.Dependencies.AspectDependencyAttribute" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.AspectDependencyAttributeCollection.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Dependencies.AspectDependencyAttributeCollection" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.AspectDependencyPosition">
      <summary>
              Enumeration of the direction of the relationship specified by an aspect dependency.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.AspectDependencyPosition.Any">
      <summary>
              Any order possible (or order not relevant).
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.AspectDependencyPosition.Before">
      <summary>
              The current aspect or advice is positioned before the other aspect or handler.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.AspectDependencyPosition.After">
      <summary>
              The current aspect or advice is positioned after the other aspect or handler.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.AspectDependencyTarget">
      <summary>
              Enumeration of targets (<see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyTarget.Default" /> or <see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyTarget.Type" />)
              to which the aspect dependency apply.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.AspectDependencyTarget.Default">
      <summary>
              Natural target of the aspect.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.AspectDependencyTarget.Type">
      <summary>
              Declaring type of the natural target of the aspect.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.AspectEffectDependencyAttribute">
      <summary>
              Specifies an aspect dependency matching aspects or advices having a given effect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.AspectEffectDependencyAttribute.#ctor(PostSharp.Aspects.Dependencies.AspectDependencyAction,PostSharp.Aspects.Dependencies.AspectDependencyPosition,System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.AspectEffectDependencyAttribute" /> and specifies a position.
            </summary>
      <param name="action">Dependency action.</param>
      <param name="position">Dependency position.</param>
      <param name="effect">Effect (see <see cref="T:PostSharp.Aspects.Dependencies.StandardEffects" />).</param>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.AspectEffectDependencyAttribute.#ctor(PostSharp.Aspects.Dependencies.AspectDependencyAction,System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.AspectEffectDependencyAttribute" /> without specifying the position,
              implicitly set to <see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyPosition.Any" />.
            </summary>
      <param name="action">Dependency action.</param>
      <param name="effect">Effect (see <see cref="T:PostSharp.Aspects.Dependencies.StandardEffects" />).</param>
    </member>
    <member name="P:PostSharp.Aspects.Dependencies.AspectEffectDependencyAttribute.Effect">
      <summary>
              Gets the effect that the aspects or advices must have in order to match the current dependency.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.AspectRoleDependencyAttribute">
      <summary>
              Specifies an aspect dependency matching aspects or advices that are a part of a given role.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.AspectRoleDependencyAttribute.#ctor(PostSharp.Aspects.Dependencies.AspectDependencyAction,PostSharp.Aspects.Dependencies.AspectDependencyPosition,System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.AspectRoleDependencyAttribute" /> and specifies a position.
            </summary>
      <param name="action">Dependency action.</param>
      <param name="position">Dependency position.</param>
      <param name="role">Role.</param>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.AspectRoleDependencyAttribute.#ctor(PostSharp.Aspects.Dependencies.AspectDependencyAction,System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.AspectEffectDependencyAttribute" /> without specifying the position,
              implicitly set to <see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyPosition.Any" />.
            </summary>
      <param name="action">Dependency action.</param>
      <param name="role">Role.</param>
    </member>
    <member name="P:PostSharp.Aspects.Dependencies.AspectRoleDependencyAttribute.Role">
      <summary>
              Gets the role that the aspects or advices must be a part of in order to match the current dependency.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.AspectTypeDependencyAttribute">
      <summary>
              Specifies an aspect dependency matching aspects of a specified type, and all its advices.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.AspectTypeDependencyAttribute.#ctor(PostSharp.Aspects.Dependencies.AspectDependencyAction,PostSharp.Aspects.Dependencies.AspectDependencyPosition,System.Type)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.AspectTypeDependencyAttribute" /> and specifies a position.
            </summary>
      <param name="action">Dependency action.</param>
      <param name="position">Dependency position.</param>
      <param name="aspectType">Aspect type (derived from <see cref="T:PostSharp.Aspects.IAspect" />).</param>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.AspectTypeDependencyAttribute.#ctor(PostSharp.Aspects.Dependencies.AspectDependencyAction,System.Type)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.AspectTypeDependencyAttribute" /> without specifying the position,
              implicitly set to <see cref="F:PostSharp.Aspects.Dependencies.AspectDependencyPosition.Any" />.
            </summary>
      <param name="action">Dependency action.</param>
      <param name="aspectType">Aspect type (derived from <see cref="T:PostSharp.Aspects.IAspect" />).</param>
    </member>
    <member name="P:PostSharp.Aspects.Dependencies.AspectTypeDependencyAttribute.AspectType">
      <summary>
              Gets the type from which the aspects should be derived in order to match the current dependency.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.ProvideAspectRoleAttribute">
      <summary>
              Specifies that the aspect or aspect advice to which this custom attribute is applied is a
              part of a given role. This aspect or advice can then be matched by <see cref="T:PostSharp.Aspects.Dependencies.AspectRoleDependencyAttribute" />/
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.ProvideAspectRoleAttribute.#ctor(System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.ProvideAspectRoleAttribute" />.
            </summary>
      <param name="role">Role.</param>
    </member>
    <member name="P:PostSharp.Aspects.Dependencies.ProvideAspectRoleAttribute.Role">
      <summary>
              Gets the role into which the aspect or advice to which this custom
              attribute is applied will be enrolled.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.StandardEffects">
      <summary>
              List of standard effects.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardEffects.ChangeControlFlow">
      <summary>
              Change the flow control (for instance by having the possibility to skip execution of an
              intercepted method).
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardEffects.Custom">
      <summary>
              Custom effect (implemented in an aspect advice). All advices have this effect by default,
              unless they are annotated by <see cref="T:PostSharp.Aspects.Dependencies.WaiveAspectEffectAttribute" />.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardEffects.CustomAttributeIntroduction">
      <summary>
              Introduction of a custom attribute.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.StandardEffects.GetInterfaceIntroductionEffect(System.String)">
      <summary>
              Gets a string representing the effect of introducing an interface into a type.
            </summary>
      <param name="typeName">Name of the introduced interface.</param>
      <returns>A string that, by convention, represents the introduction of an interface named
              <paramref name="typeName" /> into a type.</returns>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.StandardEffects.GetMemberImportEffect(System.String)">
      <summary>
              Gets a string representing the effect of importing a member into from the target
              type into the aspect.
            </summary>
      <param name="memberName">Name of the imported member.</param>
      <returns>A string that, by convention, represents the import of a member named
              <paramref name="memberName" /> from the target type into the aspect.</returns>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.StandardEffects.GetMemberIntroductionEffect(System.String)">
      <summary>
              Gets a string representing the effect of introducing a member into a type.
            </summary>
      <param name="memberName">Name of the introduced member.</param>
      <returns>A string that, by convention, represents the introduction of a member named
              <paramref name="memberName" /> into a type.</returns>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardEffects.InterfaceIntroduction">
      <summary>
              Introduction of an interface.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardEffects.MemberImport">
      <summary>
              Import of a type member.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardEffects.MemberIntroduction">
      <summary>
              Introduction of a type member.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.StandardRoles">
      <summary>
              List of standard roles.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardRoles.Caching">
      <summary>
              Caching.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardRoles.DataBinding">
      <summary>
              Data binding (for instance implementation of <see cref="T:System.ComponentModel.INotifyPropertyChanged" />).
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardRoles.EventBroker">
      <summary>
              Event broker (a system role used internally by <c>PostSharp</c> to realize
              the <see cref="M:PostSharp.Aspects.IEventInterceptionAspect.OnInvokeHandler(PostSharp.Aspects.EventInterceptionArgs)" />  handler).
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardRoles.ExceptionHandling">
      <summary>
              Exception handling.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardRoles.PerformanceInstrumentation">
      <summary>
              Performance instrumentation (for instance performance counters).
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardRoles.Persistence">
      <summary>
              Object persistence (for instance Object-Relational Mapper).
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardRoles.Security">
      <summary>
              Security enforcing (typically authorization).
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardRoles.Threading">
      <summary>
              Threading (locking).
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardRoles.Tracing">
      <summary>
              Tracing and logging.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardRoles.TransactionHandling">
      <summary>
              Transaction handling.
            </summary>
    </member>
    <member name="F:PostSharp.Aspects.Dependencies.StandardRoles.Validation">
      <summary>
              Validation of field, property, or parameter value.
            </summary>
    </member>
    <member name="T:PostSharp.Aspects.Dependencies.WaiveAspectEffectAttribute">
      <summary>
              Declares that the aspect class or advice to which this custom attribute is applied
              is exempt of a given effect.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.WaiveAspectEffectAttribute.#ctor">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.WaiveAspectEffectAttribute" /> declaring that
              the aspect class or advice to which this custom attribute is applied has
              no effect at all.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Dependencies.WaiveAspectEffectAttribute.#ctor(System.String[])">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Dependencies.WaiveAspectEffectAttribute" /> declaring that
              the aspect class or advice to which this custom attribute is applied is
              exempt of the specified effects.
            </summary>
      <param name="effects">List of effects of which the aspect class or advice
              to which this custom attribute is applied is guaranteed to be exempt.</param>
    </member>
    <member name="T:PostSharp.Aspects.Serialization.AspectSerializer">
      <summary>
              Base class for Laos serializers, whose role is to serialize aspect instances at compile-time and
              deserialize them at runtime.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.AspectSerializer.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Serialization.AspectSerializer" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Serialization.BinaryAspectSerializationBinder">
      <summary>
              Implementation of <see cref="T:System.Runtime.Serialization.SerializationBinder" /> used at runtime when aspect instances
              are deserialized. By overriding the default binder, you can resolve assembly names differently.
              This can be useful if assemblies have been renamed or merged between PostSharp run and execution
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.BinaryAspectSerializationBinder.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Serialization.BinaryAspectSerializationBinder" /> class</summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.BinaryAspectSerializationBinder.BindToType(System.String,System.String)">
      <summary>When overridden in a derived class, controls the binding of a serialized object to a type.</summary>
      <param name="assemblyName">Specifies the <see cref="T:System.Reflection.Assembly" /> name of the serialized object. </param>
      <param name="typeName">Specifies the <see cref="T:System.Type" /> name of the serialized object. </param>
      <returns>The type of the object the formatter creates a new instance of.</returns>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.BinaryAspectSerializationBinder.Retarget(System.String,System.String)">
      <summary>
              Retarget an assembly name to a new one.
            </summary>
      <param name="oldAssemblyName">Old assembly name (in short form only).</param>
      <param name="newAssemblyName">New assembly name (in short or full form).</param>
    </member>
    <member name="T:PostSharp.Aspects.Serialization.BinaryAspectSerializer">
      <summary>
              Implementation of <see cref="T:PostSharp.Aspects.Serialization.AspectSerializer" /> based on the
              <see cref="T:System.Runtime.Serialization.Formatters.Binary.BinaryFormatter" /> provided by the full version
              of the .NET Framework.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.BinaryAspectSerializer.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Serialization.BinaryAspectSerializer" /> class</summary>
    </member>
    <member name="P:PostSharp.Aspects.Serialization.BinaryAspectSerializer.Binder">
      <summary>
              Gets or sets the <see cref="T:System.Runtime.Serialization.SerializationBinder" /> used to deserialize aspects.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.BinaryAspectSerializer.ChainSurrogateSelector(System.Runtime.Serialization.ISurrogateSelector)">
      <summary>
            Adds an item to the chain of surrogate selectors
            used during the process of serializing aspects.
            </summary>
      <param name="selector">A new surrogate selector.</param>
    </member>
    <member name="T:PostSharp.Aspects.Serialization.IMetadataAwareSurrogateSelector">
      <summary>
            A <see cref="T:System.Runtime.Serialization.SurrogateSelector" /> that receives an <see cref="T:PostSharp.Reflection.IMetadataEmitter" />
            before serialization.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.IMetadataAwareSurrogateSelector.SetMetadataEmitter(PostSharp.Reflection.IMetadataEmitter)">
      <summary>
            Sets the <see cref="T:PostSharp.Reflection.IMetadataEmitter" />.
            </summary>
      <param name="metadataEmitter">An <see cref="T:PostSharp.Reflection.IMetadataEmitter" />.</param>
    </member>
    <member name="T:PostSharp.Aspects.Serialization.IStateBagSerializable">
      <summary>
              Interface to be implemented by classes that should be serializable using
              a <see cref="T:PostSharp.Aspects.Serialization.StateBagAspectSerializer" />. These classes should also implement
              a default (parameterless) constructor.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.IStateBagSerializable.Deserialize(PostSharp.Aspects.Serialization.StateBag)">
      <summary>
              Deserialized the current object from a <see cref="T:PostSharp.Aspects.Serialization.StateBag" />.
            </summary>
      <param name="stateBag">The <see cref="T:PostSharp.Aspects.Serialization.StateBag" /> into which the object was previously serialized,
              and from which it should be deserialized.</param>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.IStateBagSerializable.Serialize(PostSharp.Aspects.Serialization.StateBag)">
      <summary>
              Serializes the current object into a <see cref="T:PostSharp.Aspects.Serialization.StateBag" />/
            </summary>
      <param name="stateBag">
        <see cref="T:PostSharp.Aspects.Serialization.StateBag" /> into which the current object has to be saved.</param>
    </member>
    <member name="T:PostSharp.Aspects.Serialization.MsilAspectSerializer">
      <summary>
              When used as a value of <see cref="T:PostSharp.Aspects.Configuration.AspectConfigurationAttribute" />.<see cref="P:PostSharp.Aspects.Configuration.AspectConfigurationAttribute.SerializerType" />
              property, specifies that the aspect should not be serialized but should instead be constructed at runtime using MSIL instructions.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.MsilAspectSerializer.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Serialization.MsilAspectSerializer" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Serialization.StateBag">
      <summary>
              Simple recursive structure of name-value collections used by the <see cref="T:PostSharp.Aspects.Serialization.StateBagAspectSerializer" />
              to implement portable serialization.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBag.#ctor">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Serialization.StateBag" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBag.CreateBag(System.String)">
      <summary>
              Create a child <see cref="T:PostSharp.Aspects.Serialization.StateBag" /> and assign it a name.
            </summary>
      <param name="name">Name of the child bag.</param>
      <returns>The new <see cref="T:PostSharp.Aspects.Serialization.StateBag" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBag.Deserialize(System.IO.BinaryReader)">
      <summary>
              Deserializes a stream (given a <see cref="T:System.IO.BinaryReader" />) into a <see cref="T:PostSharp.Aspects.Serialization.StateBag" />.
            </summary>
      <param name="reader">A <see cref="T:System.IO.BinaryReader" />.</param>
      <returns>The <see cref="T:PostSharp.Aspects.Serialization.StateBag" /> built from <paramref name="reader" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBag.GetBag(System.String)">
      <summary>
              Gets a child <see cref="T:PostSharp.Aspects.Serialization.StateBag" />.
            </summary>
      <param name="name">Name of the child <see cref="T:PostSharp.Aspects.Serialization.StateBag" />.</param>
      <returns>The child <see cref="T:PostSharp.Aspects.Serialization.StateBag" /> named <paramref name="name" />, or <c>null</c>
              if there is no child <see cref="T:PostSharp.Aspects.Serialization.StateBag" /> of this name.</returns>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBag.GetValue(System.String)">
      <summary>
              Gets a value of the current <see cref="T:PostSharp.Aspects.Serialization.StateBag" />.
            </summary>
      <param name="name">Name of the requested value.</param>
      <returns>The value named <paramref name="name" />, or <c>null</c>
              if the <see cref="T:PostSharp.Aspects.Serialization.StateBag" /> does not contain this value.</returns>
    </member>
    <member name="P:PostSharp.Aspects.Serialization.StateBag.Item(System.String)">
      <summary>
              Gets or sets a value in the current <see cref="T:PostSharp.Aspects.Serialization.StateBag" />.
            </summary>
      <param name="name">Value name.</param>
      <returns>The value named <paramref name="name" />, or <c>null</c> if the
              current <see cref="T:PostSharp.Aspects.Serialization.StateBag" /> does not contain any value named <paramref name="name" />.</returns>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBag.Serialize(System.IO.BinaryWriter)">
      <summary>
              Serializes the current <see cref="T:PostSharp.Aspects.Serialization.StateBag" /> into a <see cref="T:System.IO.BinaryWriter" />.
            </summary>
      <param name="writer">A <see cref="T:System.IO.BinaryWriter" />.</param>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBag.SetBag(System.String,PostSharp.Aspects.Serialization.IStateBagSerializable)">
      <summary>
              Sets a child <see cref="T:PostSharp.Aspects.Serialization.StateBag" /> to the <see cref="T:PostSharp.Aspects.Serialization.StateBag" /> obtained
              by deserializing an object.
            </summary>
      <param name="name">Name of the child <see cref="T:PostSharp.Aspects.Serialization.StateBag" /> in the current <see cref="T:PostSharp.Aspects.Serialization.StateBag" />.</param>
      <param name="obj">Object to deserialize.</param>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBag.SetValue(System.String,System.String)">
      <summary>
              Sets a value in the current <see cref="T:PostSharp.Aspects.Serialization.StateBag" />.
            </summary>
      <param name="name">Item name.</param>
      <param name="value">Item value.</param>
    </member>
    <member name="T:PostSharp.Aspects.Serialization.StateBagAspectSerializer">
      <summary>
              Trivial serializer for use with light editions of the .NET Framework
              (Compact Framework, Silverlight). Aspects should implement the
              <see cref="T:PostSharp.Aspects.Serialization.IStateBagSerializable" /> interface and should have
              a parameterless constructor. This constructor is used during deserialization.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBagAspectSerializer.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Serialization.StateBagAspectSerializer" /> class</summary>
    </member>
    <member name="T:PostSharp.Aspects.Serialization.StateBagAspectSerializerException">
      <summary>
              Exception thrown by the <see cref="T:PostSharp.Aspects.Serialization.StateBagAspectSerializer" />.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBagAspectSerializerException.#ctor">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Serialization.StateBagAspectSerializerException" /> with the default message.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBagAspectSerializerException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
              Deserializes a <see cref="T:PostSharp.Aspects.Serialization.StateBagAspectSerializerException" />.
            </summary>
      <param name="info">Serialization information.</param>
      <param name="context">Streaming context.</param>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBagAspectSerializerException.#ctor(System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Serialization.StateBagAspectSerializerException" /> with a given message.
            </summary>
      <param name="message">Error message.</param>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.StateBagAspectSerializerException.#ctor(System.String,System.Exception)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Aspects.Serialization.StateBagAspectSerializerException" /> with a given message and an inner exception.
            </summary>
      <param name="message">Error message.</param>
      <param name="inner">Inner exception.</param>
    </member>
    <member name="T:PostSharp.Aspects.Serialization.XmlAspectSerializer">
      <summary>
              Implementation of <see cref="T:PostSharp.Aspects.Serialization.AspectSerializer" /> based on the <see cref="T:System.Xml.Serialization.XmlSerializer" /> provided by the
              .NET Framework.
            </summary>
    </member>
    <member name="M:PostSharp.Aspects.Serialization.XmlAspectSerializer.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Aspects.Serialization.XmlAspectSerializer" /> class</summary>
    </member>
    <member name="T:PostSharp.Constraints.ComponentInternalAttribute">
      <summary>
        <see cref="T:PostSharp.Constraints.ReferentialConstraint" /> that, when applied on a declaration, limits the scope (namespace or type) in which this declaration 
            can be used. This constraint is useful to isolate several components from each other, even if they are implemented in
            the same assembly. The <i>ComponentInternal</i> constraint sets the visibility of a declaration between <c>internal</c> and <c>private</c>.
            The constraint cannot be applied to public or protected declarations.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.ComponentInternalAttribute.#ctor">
      <summary>
            Initializes a <see cref="T:PostSharp.Constraints.ComponentInternalAttribute" /> restricting the target declaration from being used
            from another namespace than the namespace of the declaration.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.ComponentInternalAttribute.#ctor(System.String[])">
      <summary>
            Initializes a <see cref="T:PostSharp.Constraints.ComponentInternalAttribute" /> restricting the target declaration from being used
            outside of given types or namespaces, given by strings.
            </summary>
      <param name="friendNamespaces">List of types or namespaces from which the target declaration
            can be used.</param>
    </member>
    <member name="M:PostSharp.Constraints.ComponentInternalAttribute.#ctor(System.Type[])">
      <summary>
            Initializes a <see cref="T:PostSharp.Constraints.ComponentInternalAttribute" /> restricting the target declaration from being used
            outside of given types or namespaces, given as <see cref="T:System.Type" />.
            </summary>
      <param name="friendTypes">List of types from which the target declaration can be used. If the name of a
            type is <c>NamespaceType</c>, the whole namespace of this type is allowed.</param>
    </member>
    <member name="P:PostSharp.Constraints.ComponentInternalAttribute.Severity">
      <summary>
            Gets or sets the severity of messages emitted by this constraint.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.ComponentInternalAttribute.ValidateCode(System.Object,System.Runtime.InteropServices._Assembly)">
      <summary>
            Validates the constraint.
            </summary>
      <param name="target">Declaration (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />,
            <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.PropertyInfo" />,
            <see cref="T:System.Reflection.EventInfo" />, <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.ParameterInfo" />) to which
            the constraint has been applied.</param>
      <param name="assembly">The assembly being currently processed.</param>
    </member>
    <member name="M:PostSharp.Constraints.ComponentInternalAttribute.ValidateConstraint(System.Object)">
      <summary>
            Validates the fact that the constraint has been applied on a valid element of code. When this
            method returns <c>false</c>, the constraint is silently ignored.
            </summary>
      <param name="target">
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;param name="target"/&gt; documentation for "M:PostSharp.Constraints.ComponentInternalAttribute.ValidateConstraint(System.Object)"]</p>
      </param>
      <returns>
        <c>true</c> if the constraint has been applied on a valid element of code, otherwise <c>false</c>.</returns>
    </member>
    <member name="T:PostSharp.Constraints.Constraint">
      <summary>
            Root class for all constraints based on <see cref="T:PostSharp.Extensibility.MulticastAttribute" />.
            A constraint is a piece validation logic executed at build time. Constraints
            are applied to elements of code ((<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />,
            <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.PropertyInfo" />,
            <see cref="T:System.Reflection.EventInfo" />, <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.ParameterInfo" />)
            typically using multicast custom attributes, and verified
            at build time for every assembly using this element of code.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.Constraint.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Constraints.Constraint" /> class</summary>
    </member>
    <member name="M:PostSharp.Constraints.Constraint.ValidateConstraint(System.Object)">
      <summary>
            Validates the fact that the constraint has been applied on a valid element of code. When this
            method returns <c>false</c>, the constraint is silently ignored.
            </summary>
      <param name="target">
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;param name="target"/&gt; documentation for "M:PostSharp.Constraints.Constraint.ValidateConstraint(System.Object)"]</p>
      </param>
      <returns>
        <c>true</c> if the constraint has been applied on a valid element of code, otherwise <c>false</c>.</returns>
    </member>
    <member name="T:PostSharp.Constraints.IConstraint">
      <summary>
            A constraint is a piece of validation logic executed at build time. Constraints
            are applied to elements of code (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />,
            <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.PropertyInfo" />,
            <see cref="T:System.Reflection.EventInfo" />, <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.ParameterInfo" />),
            typically (but not necessarily) using custom attributes or <see cref="T:PostSharp.Extensibility.MulticastAttribute" />.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.IConstraint.ValidateConstraint(System.Object)">
      <summary>
            Validates the fact that the constraint has been applied on a valid element of code. When this
            method returns <c>false</c>, the constraint is silently ignored.
            </summary>
      <param name="target">
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;param name="target"/&gt; documentation for "M:PostSharp.Constraints.IConstraint.ValidateConstraint(System.Object)"]</p>
      </param>
      <returns>
        <c>true</c> if the constraint has been applied on a valid element of code, otherwise <c>false</c>.</returns>
    </member>
    <member name="T:PostSharp.Constraints.IgnoreConstraintWarningAttribute">
      <summary>
            Instructs PostSharp to ignore warnings and information messages. Errors cannot be ignored.
            This custom attribute is similar to <see cref="T:PostSharp.IgnoreWarningAttribute" />, but it is conditional
            to the compilation symbol <c>POSTSHARP_CONSTRAINTS</c>, so it will be ignored by the compiler
            unless PostSharp constraint checking is enabled.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.IgnoreConstraintWarningAttribute.#ctor(System.String)">
      <summary>
            Creates a new instance of <see cref="T:PostSharp.Constraints.IgnoreConstraintWarningAttribute" />.
            </summary>
      <param name="messageId">Identifier of the ignored warning.</param>
    </member>
    <member name="T:PostSharp.Constraints.InternalAttribute">
      <summary>
        <see cref="T:PostSharp.Constraints.ReferentialConstraint" />, when applied to a declaration, prevents it to be used from an different assembly. 
            This constraint can be used when a declaration must be made public for technical reasons, but its author do
            not want it to be used in external code.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.InternalAttribute.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Constraints.InternalAttribute" />.
            </summary>
    </member>
    <member name="P:PostSharp.Constraints.InternalAttribute.Severity">
      <summary>
            Gets or sets the severity of messages emitted by this constraint.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.InternalAttribute.ValidateCode(System.Object,System.Runtime.InteropServices._Assembly)">
      <summary>
            Validates the constraint.
            </summary>
      <param name="target">Declaration (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />,
            <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.PropertyInfo" />,
            <see cref="T:System.Reflection.EventInfo" />, <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.ParameterInfo" />) to which
            the constraint has been applied.</param>
      <param name="assembly">The assembly being currently processed.</param>
    </member>
    <member name="M:PostSharp.Constraints.InternalAttribute.ValidateConstraint(System.Object)">
      <summary>
            Validates the fact that the constraint has been applied on a valid element of code. When this
            method returns <c>false</c>, the constraint is silently ignored.
            </summary>
      <param name="target">
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;param name="target"/&gt; documentation for "M:PostSharp.Constraints.InternalAttribute.ValidateConstraint(System.Object)"]</p>
      </param>
      <returns>
        <c>true</c> if the constraint has been applied on a valid element of code, otherwise <c>false</c>.</returns>
    </member>
    <member name="T:PostSharp.Constraints.InternalImplementAttribute">
      <summary>
        <see cref="T:PostSharp.Constraints.ReferentialConstraint" /> that, when applied on an interface, prevents it to be implemented
            in a different assembly. This constraint should be used when the author of an interface
            does not expect users to implement the interface and wants to reserve the possibility
            to add new methods to the interface.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.InternalImplementAttribute.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Constraints.InternalImplementAttribute" />.
            </summary>
    </member>
    <member name="P:PostSharp.Constraints.InternalImplementAttribute.Severity">
      <summary>
            Gets or sets the severity of messages emitted by this constraint.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.InternalImplementAttribute.ValidateCode(System.Object,System.Runtime.InteropServices._Assembly)">
      <summary>
            Validates the constraint.
            </summary>
      <param name="target">Declaration (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />,
            <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.PropertyInfo" />,
            <see cref="T:System.Reflection.EventInfo" />, <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.ParameterInfo" />) to which
            the constraint has been applied.</param>
      <param name="assembly">The assembly being currently processed.</param>
    </member>
    <member name="T:PostSharp.Constraints.IReferentialConstraint">
      <summary>
            A constraint is a piece validation logic executed at build time. Constraints
            are applied to elements of code ((<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />,
            <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.PropertyInfo" />,
            <see cref="T:System.Reflection.EventInfo" />, <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.ParameterInfo" />),
            typically using custom attributes or <see cref="T:PostSharp.Extensibility.MulticastAttribute" />, and verified
            at build time for every assembly using this element of code.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.IReferentialConstraint.ValidateCode(System.Object,System.Runtime.InteropServices._Assembly)">
      <summary>
            Validates the constraint.
            </summary>
      <param name="target">Declaration (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />,
            <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.PropertyInfo" />,
            <see cref="T:System.Reflection.EventInfo" />, <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.ParameterInfo" />) to which
            the constraint has been applied.</param>
      <param name="assembly">The assembly being currently processed.</param>
    </member>
    <member name="T:PostSharp.Constraints.IScalarConstraint">
      <summary>
            A constraint that validates a specific element of code. Use an <see cref="T:PostSharp.Constraints.IReferentialConstraint" />
            to validate relationships between elements of code.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.IScalarConstraint.ValidateCode(System.Object)">
      <summary>
            Validates the element of code to which the constraint is applied.
            </summary>
      <param name="target">Element of code to which the constraint is applied (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />,
            <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.PropertyInfo" />,
            <see cref="T:System.Reflection.EventInfo" />, <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.ParameterInfo" />).</param>
    </member>
    <member name="T:PostSharp.Constraints.ReferentialConstraint">
      <summary>
            Implementation of <see cref="T:PostSharp.Constraints.IReferentialConstraint" /> based on <see cref="T:PostSharp.Extensibility.MulticastAttribute" />.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.ReferentialConstraint.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Constraints.ReferentialConstraint" /> class</summary>
    </member>
    <member name="M:PostSharp.Constraints.ReferentialConstraint.ValidateCode(System.Object,System.Runtime.InteropServices._Assembly)">
      <summary>
            Validates the constraint.
            </summary>
      <param name="target">Declaration (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />,
            <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.PropertyInfo" />,
            <see cref="T:System.Reflection.EventInfo" />, <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.ParameterInfo" />) to which
            the constraint has been applied.</param>
      <param name="assembly">The assembly being currently processed.</param>
    </member>
    <member name="T:PostSharp.Constraints.ScalarConstraint">
      <summary>
            Implementation of <see cref="T:PostSharp.Constraints.IScalarConstraint" /> based on <see cref="T:PostSharp.Extensibility.MulticastAttribute" />.
            </summary>
    </member>
    <member name="M:PostSharp.Constraints.ScalarConstraint.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Constraints.ScalarConstraint" /> class</summary>
    </member>
    <member name="M:PostSharp.Constraints.ScalarConstraint.ValidateCode(System.Object)">
      <summary>
            Validates the element of code to which the constraint is applied.
            </summary>
      <param name="target">Element of code to which the constraint is applied (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />,
            <see cref="T:System.Reflection.MethodInfo" />, <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.PropertyInfo" />,
            <see cref="T:System.Reflection.EventInfo" />, <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.ParameterInfo" />).</param>
    </member>
    <member name="T:PostSharp.Extensibility.AssemblyIdAttribute">
      <summary>
              Assigns a unique identifier to an assembly. This assembly identifier is used
              to generate unique attribute identifiers.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.AssemblyIdAttribute.#ctor(System.Int32)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Extensibility.AssemblyIdAttribute" />.
            </summary>
      <param name="id">Assembly identifier.</param>
    </member>
    <member name="T:PostSharp.Extensibility.CompatibilityLevel">
      <summary>
            Enumeration of standard levels of backward compatibility.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.CompatibilityLevel.Undefined">
      <summary>
            No compatibility level defined (latest at execution time).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.CompatibilityLevel.PostSharp20">
      <summary>
            PostSharp 2.0 RTM.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.CompatibilityLevel.PostSharp21">
      <summary>
            PostSharp 2.1 RTM.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.CompatibilityLevel.Latest">
      <summary>
            Latest at build time.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.CompatibilityLevelAttribute">
      <summary>
             Sets the level of backward compatibility required by aspects in the current assembly.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.CompatibilityLevelAttribute.#ctor(PostSharp.Extensibility.CompatibilityLevel)">
      <summary>
            Initializes a new <see cref="T:PostSharp.Extensibility.CompatibilityLevelAttribute" />.
            </summary>
      <param name="level">Level of backward compatibility required by aspects in the current assembly.</param>
    </member>
    <member name="M:PostSharp.Extensibility.DisablePostSharpMessageAttribute.#ctor(System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Extensibility.DisablePostSharpMessageAttribute" />.
            </summary>
      <param name="messageId">Identifier of the message to be disabled.</param>
    </member>
    <member name="P:PostSharp.Extensibility.DisablePostSharpMessageAttribute.MessageId">
      <summary>
              Gets the identifier of the message to be disabled.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.EnhancedByPostSharpAttribute.#ctor(System.Int32)">
      <summary>
              Instantiates a new <see cref="T:PostSharp.Extensibility.EnhancedByPostSharpAttribute" /> and specifies the license number
              (not the full license key).
            </summary>
      <param name="licenseId">License number.</param>
    </member>
    <member name="M:PostSharp.Extensibility.EnhancedByPostSharpAttribute.#ctor(System.String)">
      <summary>
              Instantiate a new <see cref="T:PostSharp.Extensibility.EnhancedByPostSharpAttribute" /> with a text message,
              typically used when PostSharp runs in evaluation mode.
            </summary>
      <param name="message">The watermark text.</param>
    </member>
    <member name="T:PostSharp.Extensibility.EscalatePostSharpMessageAttribute">
      <summary>
              Custom attribute that, when applied on an assembly, means that a given message
              should be escalated to an error during the current <c>PostSharp</c> session.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.EscalatePostSharpMessageAttribute.#ctor(System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Extensibility.EscalatePostSharpMessageAttribute" />.
            </summary>
      <param name="messageId">Identifier of the message to be disabled.</param>
    </member>
    <member name="P:PostSharp.Extensibility.EscalatePostSharpMessageAttribute.MessageId">
      <summary>
              Gets the identifier of the message to be disabled.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.FrameworkVariants">
      <summary>
              Defines constants identifying the different variants of the
              .NET Framework (<see cref="F:PostSharp.Extensibility.FrameworkVariants.Full" />, <see cref="F:PostSharp.Extensibility.FrameworkVariants.Compact" />, <see cref="F:PostSharp.Extensibility.FrameworkVariants.Silverlight" />).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.FrameworkVariants.Compact">
      <summary>
              .NET Compact Framework.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.FrameworkVariants.FromBytes(System.Byte[])">
      <summary>
              Convert a byte array (typically containing the public key token of <c>mscorlib</c>)
              into a string that can be compared to one of the constants defined in this class.
            </summary>
      <param name="bytes">A byte array (typically containing the public key token of <c>mscorlib</c>)</param>
      <returns>A string that can be compared to one of the constants defined in this class</returns>
    </member>
    <member name="F:PostSharp.Extensibility.FrameworkVariants.Full">
      <summary>
              Normal, full .NET Framework.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.FrameworkVariants.Micro">
      <summary>
              Micro Framework.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.FrameworkVariants.Silverlight">
      <summary>
              Silverlight.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.HasInheritedAttributeAttribute">
      <summary>
        <b>Internal Only.</b> Custom attribute used internally by <c>PostSharp</c> to mark
              elements having inherited custom attributes. This custom attribute should not
              be used in custom code, otherwise <c>PostSharp</c> may not work properly.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.IMessageDispenser">
      <summary>
            Gets a text given its key.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.IMessageDispenser.GetMessage(System.String)">
      <summary>
            Gets a message text given a message key.
            </summary>
      <param name="key">Message key.</param>
      <returns>The rext corresponding to <paramref name="key" />.</returns>
    </member>
    <member name="T:PostSharp.Extensibility.IMessageSink">
      <summary>
              Receives messages.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.IMessageSink.Write(PostSharp.Extensibility.Message)">
      <summary>
              Writes a message to the sink.
            </summary>
      <param name="message">A message.</param>
    </member>
    <member name="T:PostSharp.Extensibility.ImplementationBoundAttributeAttribute">
      <summary>
              Custom attribute meaning that custom attributes of a given type are
              bound to the implementation, not to the semantics.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.ImplementationBoundAttributeAttribute.#ctor(System.Type)">
      <summary>
              Initializes the new <see cref="T:PostSharp.Extensibility.ImplementationBoundAttributeAttribute" />.
            </summary>
      <param name="attributeType">Type of the custom attribute that
              should not be moved from implementation to semantic.</param>
    </member>
    <member name="P:PostSharp.Extensibility.ImplementationBoundAttributeAttribute.AttributeType">
      <summary>
              Gets the type of the custom attribute that
              should not be moved from implementation to semantic
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.InvalidAnnotationException">
      <summary>
              Exception thrown at build time by implementation of <see cref="M:PostSharp.Extensibility.IValidableAnnotation.CompileTimeValidate(System.Object)" />
              when an annotation is invalid.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.InvalidAnnotationException.#ctor">
      <summary>
              Initializes a new <see cref="T:PostSharp.Extensibility.InvalidAnnotationException" /> with default message.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.InvalidAnnotationException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
              Deserialization constructor.
            </summary>
      <param name="info">Info.</param>
      <param name="context">Context.</param>
    </member>
    <member name="M:PostSharp.Extensibility.InvalidAnnotationException.#ctor(System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Extensibility.InvalidAnnotationException" /> and with a specified exception message.
            </summary>
      <param name="message">Exception message</param>
    </member>
    <member name="M:PostSharp.Extensibility.InvalidAnnotationException.#ctor(System.String,System.Exception)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Extensibility.InvalidAnnotationException" /> with a specified exception message
              and inner <see cref="T:System.Exception" />.
            </summary>
      <param name="message">Exception message.</param>
      <param name="inner">Inner exception.</param>
    </member>
    <member name="T:PostSharp.Extensibility.IPostSharpEnvironment">
      <summary>
              Provides information about the current <c>PostSharp</c> environment.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.IPostSharpEnvironment.CurrentProject">
      <summary>
              Gets the currently executing project.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.IPostSharpEnvironment.LoadAssemblyFromFile(System.String)">
      <summary>
              Loads an <see cref="T:System.Reflection.Assembly" /> given its file name.
            </summary>
      <param name="fileName">Full assembly path.</param>
      <returns>The <see cref="T:System.Reflection.Assembly" />.</returns>
    </member>
    <member name="T:PostSharp.Extensibility.IProject">
      <summary>
              Provides information about the currently executing project.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.IProject.EvaluateExpression(System.String)">
      <summary>
              Evaluates an expression (that is, replace parameters by their actual value).
            </summary>
      <param name="expression">An expression.</param>
      <returns>The evaluated expression, or <c>null</c> if one parameter could not be
              resolved.</returns>
    </member>
    <member name="M:PostSharp.Extensibility.IProject.GetFrameworkVariant">
      <summary>
              Gets the variant of the .NET Framework against which the .NET assembly
              currently processed is linked.
            </summary>
      <returns>A string uniquely identifying the framework variant, to be compared
              to the constants defined in the <see cref="T:PostSharp.Extensibility.FrameworkVariants" /> class.
              Actually, the public key token of <c>mscorlib</c> is returned.</returns>
    </member>
    <member name="M:PostSharp.Extensibility.IProject.GetService``1(System.Boolean)">
      <summary>
            Gets a build-time service exposed by PostSharp.
            </summary>
      <param name="throwing">
        <c>true</c> wether an exception should be thrown in case the service cannot be acquired, otherwise <c>false</c>.
            The default value is <c>true</c>.</param>
      <typeparam name="T">An interface derived from <see cref="T:PostSharp.Extensibility.IService" />.</typeparam>
      <returns>The service <typeparamref name="T" />, or <c>null</c> if the service could not be acquired and <paramref name="throwing" />
            was set to <c>false</c>.</returns>
    </member>
    <member name="M:PostSharp.Extensibility.IProject.GetTargetAssembly(System.Boolean)">
      <summary>
              Gets the assembly that is being transformed by PostSharp.
            </summary>
      <param name="getWrapper">
        <c>false</c> if the system <see cref="T:System.Reflection.Assembly" /> has to be returned, <c>true</c> if a wrapper has to be returned.</param>
      <returns>The assembly being processed. If <paramref name="getWrapper" /> is <c>true</c>, this method returns an instance of a PostSharp internal
              type implementing the <see cref="T:System.Runtime.InteropServices._Assembly" /> interface. Otherwise, the reflection <see cref="T:System.Reflection.Assembly" /> is returned.</returns>
    </member>
    <member name="T:PostSharp.Extensibility.IService">
      <summary>
            A service exposed by the build-time part of PostSharp.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.IValidableAnnotation">
      <summary>
              Interface that, when implemented by a custom attribute (<see cref="T:System.Attribute" />),
              causes <c>PostSharp</c> to invoke a validation method for every instance
              of that custom attribute.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.IValidableAnnotation.CompileTimeValidate(System.Object)">
      <summary>
              Method invoked at build time to ensure that the aspect has been applied to
              the right target.
            </summary>
      <param name="target">Target element.</param>
      <returns>
        <c>true</c> if the aspect was applied to an acceptable target, otherwise
              <c>false</c>.</returns>
    </member>
    <member name="T:PostSharp.Extensibility.Message">
      <summary>
              Encapsulates a message (error, warning, info, ...).
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.Message.#ctor(PostSharp.Extensibility.SeverityType,System.String,System.String,System.String,System.String,System.String,System.Int32,System.Int32,System.Exception)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Extensibility.Message" /> and specifies all its properties.
            </summary>
      <param name="severity">Message severify (fatal error, error, info, debug).</param>
      <param name="messageId">Identifier of the message type.</param>
      <param name="locationFile">File that caused the error, or <c>null</c> if
              the file is unknown or does not apply.</param>
      <param name="locationLine"> Position (line) in the file that caused the error,
              or <see cref="F:PostSharp.Extensibility.Message.NotAvailable" /> if the line is 
              unknown or does not apply.</param>
      <param name="locationColumn">Position (column) in the file that caused the error,
              or <see cref="F:PostSharp.Extensibility.Message.NotAvailable" /> if the line is 
              unknown or does not apply.</param>
      <param name="innerException">The <see cref="T:System.Exception" /> that caused this message,
              or <c>null</c> if this message was not caused by an
              exception.</param>
      <param name="source">Name of the component emitting the message.</param>
      <param name="helpLink">Link to the help file page associated to this message.</param>
      <param name="messageText">Fully formatted message text.</param>
    </member>
    <member name="M:PostSharp.Extensibility.Message.#ctor(PostSharp.MessageLocation,PostSharp.Extensibility.SeverityType,System.String,System.String,System.String,System.String,System.Exception)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Extensibility.Message" /> and specifies all its properties.
            </summary>
      <param name="location">Element of code (<see cref="T:System.Runtime.InteropServices._Assembly" />, <see cref="T:System.Type" />, <see cref="T:System.Reflection.MethodInfo" />,
            <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.PropertyInfo" />, <see cref="T:System.Reflection.EventInfo" /> or <see cref="T:System.Reflection.ParameterInfo" />)
            to which the message applies. When called from PostSharp.Sdk, the parameter can also contain a <c>MetadataDeclaration</c>.</param>
      <param name="severity">Message severify (fatal error, error, info, debug).</param>
      <param name="messageId">Identifier of the message type.</param>
      <param name="messageText">Fully formatted message text.</param>
      <param name="helpLink">Link to the help file page associated to this message.</param>
      <param name="source">Name of the component emitting the message.</param>
      <param name="innerException">The <see cref="T:System.Exception" /> that caused this message,
              or <c>null</c> if this message was not caused by an
              exception.</param>
    </member>
    <member name="M:PostSharp.Extensibility.Message.GetExceptionStackMessage(System.Exception)">
      <summary>
              Returns a string composed of the messages of
              all inner exceptions.
            </summary>
      <param name="outerException">The outer exception.</param>
      <returns>A string composed of the mesages of all
              <paramref name="outerException" /> and all inner exceptions,
              concatenated by the string <c>--&gt;</c>.</returns>
    </member>
    <member name="P:PostSharp.Extensibility.Message.HelpLink">
      <summary>
              Gets the help link.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.Message.InnerException">
      <summary>
              Gets the
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.Message.Location">
      <summary>
            Location of the source code artifact causing the message.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.Message.LocationColumn">
      <summary>
              Gets the column in the file that caused the
              message.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.Message.LocationFile">
      <summary>
              Gets the name of the file that caused
              the message.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.Message.LocationLine">
      <summary>
              Gets the line in the file that caused the
              message.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.Message.MessageId">
      <summary>
              Gets the message type identifier.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.Message.MessageText">
      <summary>
              Gets the message formatted text.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.Message.NotAvailable">
      <summary>
              When set to the <see cref="P:PostSharp.Extensibility.Message.LocationLine" /> or the
              <see cref="P:PostSharp.Extensibility.Message.LocationColumn" /> property, means that
              the value of this property is unknown.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.Message.Severity">
      <summary>
              Gets the message severity.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.Message.Source">
      <summary>
              Gets or sets the name of the source component.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.MessageDispenser">
      <summary>
            Provides a base implementation of <see cref="T:PostSharp.Extensibility.IMessageDispenser" />
            where the message key is supposed to be in format <c>PRE0000</c>, where
            <c>PRE</c> is a prefix and <c>0000</c> is an integer. Keys for help URLs
            have the format <c>PRE0000?</c>.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.MessageDispenser.#ctor(System.String)">
      <summary>
            Initializes a new <see cref="T:PostSharp.Extensibility.MessageDispenser" />.
            </summary>
      <param name="prefix">Prefix of all messages provided by the new dispenser.</param>
    </member>
    <member name="M:PostSharp.Extensibility.MessageDispenser.GetHelpUrl(System.Int32)">
      <summary>
            Gets the message help URL of a given number.
            </summary>
      <param name="number">Message number.</param>
      <returns>The message help URL corresponding to <paramref name="number" />.</returns>
    </member>
    <member name="M:PostSharp.Extensibility.MessageDispenser.GetMessage(System.Int32)">
      <summary>
            Gets the message text of a given number.
            </summary>
      <param name="number">Message number.</param>
      <returns>The message text corresponding to <paramref name="number" />.</returns>
    </member>
    <member name="M:PostSharp.Extensibility.MessageDispenser.GetMessage(System.String)">
      <summary>
            Gets a message text given a message key.
            </summary>
      <param name="key">Message key.</param>
      <returns>The rext corresponding to <paramref name="key" />.</returns>
    </member>
    <member name="P:PostSharp.Extensibility.MessageDispenser.Prefix">
      <summary>
            Gets the message prefix.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.MessageException">
      <summary>
              Exception embedding a <see cref="T:PostSharp.Extensibility.Message" />.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.MessageException.#ctor(PostSharp.Extensibility.Message)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Extensibility.MessageException" /> from
              an existing <see cref="T:PostSharp.Extensibility.Message" />.
            </summary>
      <param name="message">A <see cref="T:PostSharp.Extensibility.Message" />.</param>
    </member>
    <member name="M:PostSharp.Extensibility.MessageException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>
              Serializes the current object.
            </summary>
      <param name="info">Serialization information.</param>
      <param name="context">Serialization context.</param>
    </member>
    <member name="P:PostSharp.Extensibility.MessageException.MessageObject">
      <summary>
              Gets the <see cref="T:PostSharp.Extensibility.Message" /> em
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.MessageSource">
      <summary>
              Provides commodity methods to work with an <see cref="T:PostSharp.Extensibility.IMessageSink" />.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MessageSource.MessageSink">
      <summary>
              Gets the current message sink.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.MulticastAttribute">
      <summary>
            Custom attribute that can be applied to multiple elements
            using wildcards.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.MulticastAttribute.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Extensibility.MulticastAttribute" /> class</summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeExclude">
      <summary>
            If true, indicates that this attribute <i>removes</i> all other instances of the
            same attribute type from the set of elements defined by the current instance.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeInheritance">
      <summary>
            Determines whether this attribute is inherited
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributePriority">
      <summary>
            Gets or sets the priority of the current attribute in case that multiple 
            instances are defined on the same element (lower values are processed before).
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeReplace">
      <summary>
            Determines whether this attribute replaces other attributes found on the
            target declarations.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeTargetAssemblies">
      <summary>
            Gets or sets the assemblies to which the current attribute apply.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeTargetElements">
      <summary>
            Gets or sets the kind of elements to which this custom attributes applies.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeTargetExternalMemberAttributes">
      <summary>
            Gets or sets the visibilities, scopes, virtualities, and implementation
             of members to which this attribute applies, when the member is external to the current module.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeTargetExternalTypeAttributes">
      <summary>
            Gets or sets the visibilities of types to which this attribute applies,
            when this type is external to the current module.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeTargetMemberAttributes">
      <summary>
            Gets or sets the visibilities, scopes, virtualities, and implementation
             of members to which this attribute applies.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeTargetMembers">
      <summary>
            Gets or sets the expression specifying to which members 
            this instance applies.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeTargetParameterAttributes">
      <summary>
            Gets or sets the passing style (by value, <b>out</b> or <b>ref</b>)
             of parameters to which this attribute applies.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeTargetParameters">
      <summary>
            Gets or sets the expression specifying to which parameters 
            this instance applies.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeTargetTypeAttributes">
      <summary>
            Gets or sets the visibilities of types to which this attribute applies.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttribute.AttributeTargetTypes">
      <summary>
            Gets or sets the expression specifying to which types
            this instance applies.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.MulticastAttributes">
      <summary>
              Attributes of elements to which multicast custom attributes (<see cref="T:PostSharp.Extensibility.MulticastAttribute" />)
              apply.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.Default">
      <summary>
              Specifies that the set of target attributes is inherited from
              the parent custom attribute.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.Private">
      <summary>
              Private (visible inside the current type).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.Protected">
      <summary>
              Protected (visible inside derived types).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.Internal">
      <summary>
              Internal (visible inside the current assembly).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.InternalAndProtected">
      <summary>
              Internal <i>and</i> protected (visible inside derived types that are defined in the current assembly).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.InternalOrProtected">
      <summary>
              Internal <i>or</i> protected (visible inside all derived types and in the current assembly).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.Public">
      <summary>
              Public (visible everywhere).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.AnyVisibility">
      <summary>
              Any visibility.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.Static">
      <summary>
              Static scope.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.Instance">
      <summary>
              Instance scope.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.AnyScope">
      <summary>
              Any scope (<see cref="F:PostSharp.Extensibility.MulticastAttributes.Static" /> | <see cref="F:PostSharp.Extensibility.MulticastAttributes.Instance" />).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.Abstract">
      <summary>
              Abstract methods.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.NonAbstract">
      <summary>
              Concrete (non-abstract) methods.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.AnyAbstraction">
      <summary>
              Any abstraction (<see cref="F:PostSharp.Extensibility.MulticastAttributes.Abstract" /> | <see cref="F:PostSharp.Extensibility.MulticastAttributes.NonAbstract" />).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.Virtual">
      <summary>
              Virtual methods.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.NonVirtual">
      <summary>
              Non-virtual methods.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.AnyVirtuality">
      <summary>
              Any virtuality (<see cref="F:PostSharp.Extensibility.MulticastAttributes.Virtual" /> | <see cref="F:PostSharp.Extensibility.MulticastAttributes.NonVirtual" />).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.Managed">
      <summary>
              Managed code implemetation.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.NonManaged">
      <summary>
              Non-managed code implementation (external or system).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.AnyImplementation">
      <summary>
              Any implementation (<see cref="F:PostSharp.Extensibility.MulticastAttributes.Managed" /> | <see cref="F:PostSharp.Extensibility.MulticastAttributes.NonManaged" />).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.Literal">
      <summary>
              Literal fields.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.NonLiteral">
      <summary>
              Non-literal fields.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.AnyLiterality">
      <summary>
              Any field literality (<see cref="F:PostSharp.Extensibility.MulticastAttributes.Literal" /> | <see cref="F:PostSharp.Extensibility.MulticastAttributes.NonLiteral" />).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.InParameter">
      <summary>
              Input parameters.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.CompilerGenerated">
      <summary>
              Compiler-generated code (for instance closure types of anonymous method, iterator type, ...).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.UserGenerated">
      <summary>
              User-generated code (anything expected <see cref="F:PostSharp.Extensibility.MulticastAttributes.CompilerGenerated" />).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.AnyGeneration">
      <summary>
              Any code generation (<see cref="F:PostSharp.Extensibility.MulticastAttributes.CompilerGenerated" /> | <see cref="F:PostSharp.Extensibility.MulticastAttributes.UserGenerated" />)l
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.OutParameter">
      <summary>
              Output (<b>out</b> in C#) parameters.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.RefParameter">
      <summary>
              Input/Output (<b>ref</b> in C#) parameters.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.AnyParameter">
      <summary>
              Any kind of parameter passing (<see cref="F:PostSharp.Extensibility.MulticastAttributes.InParameter" /> | <see cref="F:PostSharp.Extensibility.MulticastAttributes.OutParameter" /> | <see cref="F:PostSharp.Extensibility.MulticastAttributes.RefParameter" />).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastAttributes.All">
      <summary>
              All members.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.MulticastAttributeUsageAttribute">
      <summary>
              Custom attribute that determines the usage of a <see cref="T:PostSharp.Extensibility.MulticastAttribute" />.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.MulticastAttributeUsageAttribute.#ctor(PostSharp.Extensibility.MulticastTargets)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Extensibility.MulticastAttributeUsageAttribute" />.
            </summary>
      <param name="validOn">Kinds of targets that instances of the related <see cref="T:PostSharp.Extensibility.MulticastAttribute" />
              apply to.</param>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttributeUsageAttribute.AllowExternalAssemblies">
      <summary>
              Determines whether this attribute can be applied to declaration of external assemblies
              (i.e. to other assemblies than the one in which the custom attribute is instantiated).
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttributeUsageAttribute.AllowMultiple">
      <summary>
              Determines whether many instances of the custom attribute are allowed on a single declaration.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttributeUsageAttribute.HideFromAspectBrowser">
      <summary>
            Determines whether instances of the target <see cref="T:PostSharp.Extensibility.MulticastAttribute" />
            should be hidden from the Aspect Browser, in the Visual Studio extension.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttributeUsageAttribute.Inheritance">
      <summary>
              Determines whether the custom attribute in inherited along the lines of inheritance
              of the target element.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttributeUsageAttribute.PersistMetaData">
      <summary>
              Determines whether the custom attribute should be persisted in metadata, so that
              it would be available for <c>System.Reflection</c>.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttributeUsageAttribute.TargetExternalMemberAttributes">
      <summary>
              Gets or sets the attributes of the members (fields or methods) to which
              the custom attribute can be applied, when the members are external to
              the current module.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttributeUsageAttribute.TargetExternalTypeAttributes">
      <summary>
              Gets or sets the attributes of the types to which
              the custom attribute can be applied, when the type is external to
              the current module. If the custom attribute relates to
              fields or methods, this property specifies which attributes
              of the declaring type are acceptable.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttributeUsageAttribute.TargetMemberAttributes">
      <summary>
              Gets or sets the attributes of the members (fields or methods) to which
              the custom attribute can be applied.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttributeUsageAttribute.TargetParameterAttributes">
      <summary>
              Gets or sets the attributes of the parameter to which
              the custom attribute can be applied.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttributeUsageAttribute.TargetTypeAttributes">
      <summary>
              Gets or sets the attributes of the types to which
              the custom attribute can be applied. If the custom attribute relates to
              fields or methods, this property specifies which attributes
              of the declaring type are acceptable.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.MulticastAttributeUsageAttribute.ValidOn">
      <summary>
              Gets the kinds of targets that instances of the related <see cref="T:PostSharp.Extensibility.MulticastAttribute" />
              apply to.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.MulticastInheritance">
      <summary>
              Kind of inheritance of <see cref="T:PostSharp.Extensibility.MulticastAttribute" />.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastInheritance.None">
      <summary>
              No inheritance.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastInheritance.Strict">
      <summary>
              The instance is inherited to children of the original element,
              but multicasting is not applied to members of children.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastInheritance.Multicast">
      <summary>
              The instance is inherited to children of the original element
              and multicasting is applied to members of children.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.MulticastTargets">
      <summary>
              Kinds of targets to which multicast custom attributes (<see cref="T:PostSharp.Extensibility.MulticastAttribute" />)
              can apply.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.Default">
      <summary>
              Specifies that the set of target elements is inherited from
              the parent custom attribute.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.Class">
      <summary>
              Class.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.Struct">
      <summary>
              Structure.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.Enum">
      <summary>
              Enumeration.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.Delegate">
      <summary>
              Delegate.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.Interface">
      <summary>
              Interface.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.AnyType">
      <summary>
              Any type (<see cref="F:PostSharp.Extensibility.MulticastTargets.Class" />, <see cref="F:PostSharp.Extensibility.MulticastTargets.Struct" />, <see cref="F:PostSharp.Extensibility.MulticastTargets.Enum" />,
              <see cref="F:PostSharp.Extensibility.MulticastTargets.Delegate" /> or <see cref="F:PostSharp.Extensibility.MulticastTargets.Interface" />).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.Field">
      <summary>
              Field.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.Method">
      <summary>
              Method (but not constructor).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.InstanceConstructor">
      <summary>
              Instance constructor.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.StaticConstructor">
      <summary>
              Static constructor.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.Property">
      <summary>
              Property (but not methods inside the property).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.Event">
      <summary>
              Event (but not methods inside the event).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.AnyMember">
      <summary>
              Any member (<see cref="F:PostSharp.Extensibility.MulticastTargets.Field" />, <see cref="F:PostSharp.Extensibility.MulticastTargets.Method" />, <see cref="F:PostSharp.Extensibility.MulticastTargets.InstanceConstructor" />,
              <see cref="F:PostSharp.Extensibility.MulticastTargets.StaticConstructor" />,
              <see cref="F:PostSharp.Extensibility.MulticastTargets.Property" />, <see cref="F:PostSharp.Extensibility.MulticastTargets.Event" />).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.Assembly">
      <summary>
              Assembly.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.Parameter">
      <summary>
              Method or property parameter.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.ReturnValue">
      <summary>
              Method or property return value.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.MulticastTargets.All">
      <summary>
              All element kinds.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.PostSharpEnvironment">
      <summary>
              Provides access to the current <c>PostSharp</c> environment (<see cref="T:PostSharp.Extensibility.IPostSharpEnvironment" />).
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.PostSharpEnvironment.Current">
      <summary>
              Gets the current <c>PostSharp</c> environment, or <c>null</c>
              if the <c>PostSharp</c> Platform is not loaded in the current
              context.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.PostSharpEnvironment.CurrentProject">
      <summary>
            Gets the current PostSharp project.
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.PostSharpEnvironment.IsPostSharpRunning">
      <summary>
              Determines whether the <c>PostSharp</c> Platform is currently loaded.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.PostSharpTrace">
      <summary>
              Provides tracing functionality. An instance of the <see cref="T:PostSharp.Extensibility.PostSharpTrace" /> type
              implements a trace sink.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.#ctor(System.String)">
      <summary>
              Initialize a new <see cref="T:PostSharp.Extensibility.PostSharpTrace" /> sink.
            </summary>
      <param name="category">Category of messages.</param>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.EnableCategory(PostSharp.Extensibility.PostSharpTrace)">
      <summary>
              Enables a trace category known by its object.
            </summary>
      <param name="category">A <see cref="T:PostSharp.Extensibility.PostSharpTrace" /> object.</param>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.EnableCategory(System.String)">
      <summary>
              Enables a trace category known by its name.
            </summary>
      <param name="category">The category name.</param>
    </member>
    <member name="P:PostSharp.Extensibility.PostSharpTrace.Enabled">
      <summary>
              Determines whether the current trace sink is enabled.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.Write(System.String)">
      <summary>
              Writes a message to the current sink without formatting parameter.
            </summary>
      <param name="message">Message.</param>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.Write(System.String,System.Object)">
      <summary>
              Writes a message to the current sink with a single formatting parameter.
            </summary>
      <param name="format">Message formatting string.</param>
      <param name="arg0">The first formatting parameter.</param>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.Write(System.String,System.Object,System.Object)">
      <summary>
              Writes a message to the current sink with two formatting parameters.
            </summary>
      <param name="format">Message formatting string.</param>
      <param name="arg0">The first formatting parameter.</param>
      <param name="arg1">The second formatting parameter.</param>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.Write(System.String,System.Object,System.Object,System.Object)">
      <summary>
              Writes a message to the current sink with three formatting parameters.
            </summary>
      <param name="format">Message formatting string.</param>
      <param name="arg0">The first formatting parameter.</param>
      <param name="arg1">The second formatting parameter.</param>
      <param name="arg2">The thirs formatting parameter.</param>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.Write(System.String,System.Object[])">
      <summary>
              Writes a message to the current sink with many formatting parameters.
            </summary>
      <param name="format">Message formatting string.</param>
      <param name="parameters">Formatting parameters.</param>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.WriteLine(System.String)">
      <summary>
              Writes a message to the current sink without parameter, 
              and issues a line break.
            </summary>
      <param name="format">Message formatting string.</param>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.WriteLine(System.String,System.Object)">
      <summary>
              Writes a message to the current sink with a single formatting parameter, 
              and issues a line break.
            </summary>
      <param name="format">Message formatting string.</param>
      <param name="arg0">The first formatting parameter.</param>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.WriteLine(System.String,System.Object,System.Object)">
      <summary>
              Writes a message to the current sink with two formatting parameters, 
              and issues a line break.
            </summary>
      <param name="format">Message formatting string.</param>
      <param name="arg0">The first formatting parameter.</param>
      <param name="arg1">The second formatting parameter.</param>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.WriteLine(System.String,System.Object,System.Object,System.Object)">
      <summary>
              Writes a message to the current sink with three formatting parameters, 
              and issues a line break.
            </summary>
      <param name="format">Message formatting string.</param>
      <param name="arg0">The first formatting parameter.</param>
      <param name="arg1">The second formatting parameter.</param>
      <param name="arg2">The thirs formatting parameter.</param>
    </member>
    <member name="M:PostSharp.Extensibility.PostSharpTrace.WriteLine(System.String,System.Object[])">
      <summary>
              Writes a message to the current sink with many formatting parameters, and issues a line break.
            </summary>
      <param name="format">Message formatting string.</param>
      <param name="parameters">Formatting parameters.</param>
    </member>
    <member name="T:PostSharp.Extensibility.RequirePostSharpAttribute">
      <summary>
              Custom attribute that, when applied on another custom attribute (a class derived 
              from <see cref="T:System.Attribute" />), means that assemblies with elements
              annotated with that custom attribute should be processed by <c>PostSharp</c>.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.RequirePostSharpAttribute.#ctor(System.String,System.String)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Extensibility.RequirePostSharpAttribute" />.
            </summary>
      <param name="plugIn">Name of the required plug-in (file name without extension).</param>
      <param name="task">Name of the required task (should be defined in <paramref name="plugIn" />).</param>
    </member>
    <member name="P:PostSharp.Extensibility.RequirePostSharpAttribute.PlugIn">
      <summary>
              Gets the name of the required plug-in (file name without the extension).
            </summary>
    </member>
    <member name="P:PostSharp.Extensibility.RequirePostSharpAttribute.Task">
      <summary>
              Gets the name of the required task (should be defined in <see cref="P:PostSharp.Extensibility.RequirePostSharpAttribute.PlugIn" />).
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.RequireReflectionWrapperAttribute">
      <summary>
              Custom attribute that, when applied on a type, specifies that all build-time semantics of this type
              require reflection wrappers to be passed instead of real reflection objects.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.RequireReflectionWrapperAttribute.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Extensibility.RequireReflectionWrapperAttribute" /> class</summary>
    </member>
    <member name="T:PostSharp.Extensibility.SeverityType">
      <summary>
              Types of message severities.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.SeverityType.Debug">
      <summary>
              Debugging information (typically trace).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.SeverityType.Verbose">
      <summary>
              Verbose (lowly important information).
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.SeverityType.Info">
      <summary>
              Information.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.SeverityType.ImportantInfo">
      <summary>
              Important information.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.SeverityType.CommandLine">
      <summary>
              Command line.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.SeverityType.Warning">
      <summary>
              Warning.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.SeverityType.Error">
      <summary>
              Error.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.SeverityType.Fatal">
      <summary>
              Fatal error.
            </summary>
    </member>
    <member name="F:PostSharp.Extensibility.SeverityType.None">
      <summary>
            No message.
            </summary>
    </member>
    <member name="T:PostSharp.Extensibility.SuppressAnnotationValidationAttribute">
      <summary>
            Instructs PostSharp that the validation of <see cref="T:PostSharp.Extensibility.IValidableAnnotation" /> is done by another component, and should
            not be processed by the default component.
            </summary>
    </member>
    <member name="M:PostSharp.Extensibility.SuppressAnnotationValidationAttribute.#ctor">
      <summary>Initializes a new instance of the <see cref="T:PostSharp.Extensibility.SuppressAnnotationValidationAttribute" /> class</summary>
    </member>
    <member name="T:PostSharp.Reflection.CodeReferenceKind">
      <summary>
              Kinds of code references (<see cref="T:PostSharp.Reflection.ICodeReference" />).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.CodeReferenceKind.None">
      <summary>
              No code reference.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.CodeReferenceKind.TypeInheritance">
      <summary>
              Type inheritance. The base type is the <see cref="P:PostSharp.Reflection.ICodeReference.ReferencedDeclaration" />;
              the child type is the <see cref="P:PostSharp.Reflection.ICodeReference.ReferencingDeclaration" />.
              See <see cref="T:PostSharp.Reflection.TypeInheritanceCodeReference" />.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.CodeReferenceKind.MemberType">
      <summary>
              Member type (field or property type, method return type, or parameter type).
              The member type is the <see cref="P:PostSharp.Reflection.ICodeReference.ReferencedDeclaration" />.
              See <see cref="T:PostSharp.Reflection.MemberTypeCodeReference" />.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.CodeReferenceKind.MethodUsage">
      <summary>
              Operand of an instruction in a method body. The <see cref="P:PostSharp.Reflection.ICodeReference.ReferencingDeclaration" />
              is the method. See <see cref="T:PostSharp.Reflection.MethodUsageCodeReference" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.CustomAttributeInstance">
      <summary>
              Instance of a custom attribute on a target declaration.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.CustomAttributeInstance.Attribute">
      <summary>
              Gets the custom attribute.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.CustomAttributeInstance.Construction">
      <summary>
              Gets the <see cref="T:PostSharp.Reflection.ObjectConstruction" /> (including given constructor
              arguments and named arguments) used to construct
              the <see cref="P:PostSharp.Reflection.CustomAttributeInstance.Attribute" />.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.CustomAttributeInstance.Target">
      <summary>
              Gets the declaration on which the custom attribute is defined.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.CustomReflectionBinder">
      <summary>
              Custom implementation of a reflection <see cref="T:System.Reflection.Binder" /> that select
              methods based on exact matches using the <see cref="T:PostSharp.Reflection.ReflectionTypeComparer" />.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.CustomReflectionBinder.BindToField(System.Reflection.BindingFlags,System.Reflection.FieldInfo[],System.Object,System.Globalization.CultureInfo)">
      <summary>Selects a field from the given set of fields, based on the specified criteria.</summary>
      <param name="bindingAttr">A bitwise combination of <see cref="T:System.Reflection.BindingFlags" /> values. </param>
      <param name="match">The set of fields that are candidates for matching. For example, when a <see cref="T:System.Reflection.Binder" /> object is used by <see cref="Overload:System.Type.InvokeMember" />, this parameter specifies the set of fields that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by <see cref="P:System.Type.DefaultBinder" /> changes the order of this array.</param>
      <param name="value">The field value used to locate a matching field. </param>
      <param name="culture">An instance of <see cref="T:System.Globalization.CultureInfo" /> that is used to control the coercion of data types, in binder implementations that coerce types. If <paramref name="culture" /> is null, the <see cref="T:System.Globalization.CultureInfo" /> for the current thread is used.Note   For example, if a binder implementation allows coercion of string values to numeric types, this parameter is necessary to convert a String that represents 1000 to a Double value, because 1000 is represented differently by different cultures. The default binder does not do such string coercions.</param>
      <param name="bindingFlags">
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;param name="bindingFlags"/&gt; documentation for "M:PostSharp.Reflection.CustomReflectionBinder.BindToField(System.Reflection.BindingFlags,System.Reflection.FieldInfo[],System.Object,System.Globalization.CultureInfo)"]</p>
      </param>
      <returns>The matching field. </returns>
      <exception cref="T:System.Reflection.AmbiguousMatchException">For the default binder, <paramref name="bindingAttr" /> includes <see cref="F:System.Reflection.BindingFlags.SetField" />, and <paramref name="match" /> contains multiple fields that are equally good matches for <paramref name="value" />. For example, <paramref name="value" /> contains a MyClass object that implements the IMyClass interface, and <paramref name="match" /> contains a field of type MyClass and a field of type IMyClass. </exception>
      <exception cref="T:System.MissingFieldException">For the default binder, <paramref name="bindingAttr" /> includes <see cref="F:System.Reflection.BindingFlags.SetField" />, and <paramref name="match" /> contains no fields that can accept <paramref name="value" />.</exception>
      <exception cref="T:System.NullReferenceException">For the default binder, <paramref name="bindingAttr" /> includes <see cref="F:System.Reflection.BindingFlags.SetField" />, and <paramref name="match" /> is null or an empty array.-or-<paramref name="bindingAttr" /> includes <see cref="F:System.Reflection.BindingFlags.SetField" />, and <paramref name="value" /> is null.</exception>
    </member>
    <member name="M:PostSharp.Reflection.CustomReflectionBinder.BindToMethod(System.Reflection.BindingFlags,System.Reflection.MethodBase[],System.Object[]@,System.Reflection.ParameterModifier[],System.Globalization.CultureInfo,System.String[],System.Object@)">
      <summary>Selects a method to invoke from the given set of methods, based on the supplied arguments.</summary>
      <param name="bindingAttr">A bitwise combination of <see cref="T:System.Reflection.BindingFlags" /> values. </param>
      <param name="match">The set of methods that are candidates for matching. For example, when a <see cref="T:System.Reflection.Binder" /> object is used by <see cref="Overload:System.Type.InvokeMember" />, this parameter specifies the set of methods that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by <see cref="P:System.Type.DefaultBinder" /> changes the order of this array.</param>
      <param name="args">The arguments that are passed in. The binder can change the order of the arguments in this array; for example, the default binder changes the order of arguments if the <paramref name="names" /> parameter is used to specify an order other than positional order. If a binder implementation coerces argument types, the types and values of the arguments can be changed as well. </param>
      <param name="modifiers">An array of parameter modifiers that enable binding to work with parameter signatures in which the types have been modified. The default binder implementation does not use this parameter.</param>
      <param name="culture">An instance of <see cref="T:System.Globalization.CultureInfo" /> that is used to control the coercion of data types, in binder implementations that coerce types. If <paramref name="culture" /> is null, the <see cref="T:System.Globalization.CultureInfo" /> for the current thread is used. Note   For example, if a binder implementation allows coercion of string values to numeric types, this parameter is necessary to convert a String that represents 1000 to a Double value, because 1000 is represented differently by different cultures. The default binder does not do such string coercions.</param>
      <param name="names">The parameter names, if parameter names are to be considered when matching, or null if arguments are to be treated as purely positional. For example, parameter names must be used if arguments are not supplied in positional order. </param>
      <param name="state">After the method returns, <paramref name="state" /> contains a binder-provided object that keeps track of argument reordering. The binder creates this object, and the binder is the sole consumer of this object. If <paramref name="state" /> is not null when BindToMethod returns, you must pass <paramref name="state" /> to the <see cref="M:System.Reflection.Binder.ReorderArgumentArray(System.Object[]@,System.Object)" /> method if you want to restore <paramref name="args" /> to its original order, for example, so that you can retrieve the values of ref parameters (ByRef parameters in Visual Basic). </param>
      <param name="bindingFlags">
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;param name="bindingFlags"/&gt; documentation for "M:PostSharp.Reflection.CustomReflectionBinder.BindToMethod(System.Reflection.BindingFlags,System.Reflection.MethodBase[],System.Object[]@,System.Reflection.ParameterModifier[],System.Globalization.CultureInfo,System.String[],System.Object@)"]</p>
      </param>
      <returns>The matching method.</returns>
      <exception cref="T:System.Reflection.AmbiguousMatchException">For the default binder, <paramref name="match" /> contains multiple methods that are equally good matches for <paramref name="args" />. For example, <paramref name="args" /> contains a MyClass object that implements the IMyClass interface, and <paramref name="match" /> contains a method that takes MyClass and a method that takes IMyClass. </exception>
      <exception cref="T:System.MissingMethodException">For the default binder, <paramref name="match" /> contains no methods that can accept the arguments supplied in <paramref name="args" />.</exception>
      <exception cref="T:System.ArgumentException">For the default binder, <paramref name="match" /> is null or an empty array.</exception>
    </member>
    <member name="M:PostSharp.Reflection.CustomReflectionBinder.ChangeType(System.Object,System.Type,System.Globalization.CultureInfo)">
      <summary>Changes the type of the given Object to the given Type.</summary>
      <param name="value">The object to change into a new Type. </param>
      <param name="type">The new Type that <paramref name="value" /> will become. </param>
      <param name="culture">An instance of <see cref="T:System.Globalization.CultureInfo" /> that is used to control the coercion of data types. If <paramref name="culture" /> is null, the <see cref="T:System.Globalization.CultureInfo" /> for the current thread is used.Note   For example, this parameter is necessary to convert a String that represents 1000 to a Double value, because 1000 is represented differently by different cultures. </param>
      <returns>An object that contains the given value as the new type. </returns>
    </member>
    <member name="F:PostSharp.Reflection.CustomReflectionBinder.Instance">
      <summary>
              Singleton instance.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.CustomReflectionBinder.ReorderArgumentArray(System.Object[]@,System.Object)">
      <summary>Upon returning from <see cref="M:System.Reflection.Binder.BindToMethod(System.Reflection.BindingFlags,System.Reflection.MethodBase[],System.Object[]@,System.Reflection.ParameterModifier[],System.Globalization.CultureInfo,System.String[],System.Object@)" />, restores the <paramref name="args" /> argument to what it was when it came from BindToMethod.</summary>
      <param name="args">The actual arguments that are passed in. Both the types and values of the arguments can be changed. </param>
      <param name="state">A binder-provided object that keeps track of argument reordering. </param>
    </member>
    <member name="M:PostSharp.Reflection.CustomReflectionBinder.SelectMethod(System.Reflection.BindingFlags,System.Reflection.MethodBase[],System.Type[],System.Reflection.ParameterModifier[])">
      <summary>Selects a method from the given set of methods, based on the argument type.</summary>
      <param name="bindingAttr">A bitwise combination of <see cref="T:System.Reflection.BindingFlags" /> values. </param>
      <param name="match">The set of methods that are candidates for matching. For example, when a <see cref="T:System.Reflection.Binder" /> object is used by <see cref="Overload:System.Type.InvokeMember" />, this parameter specifies the set of methods that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by <see cref="P:System.Type.DefaultBinder" /> changes the order of this array.</param>
      <param name="types">The parameter types used to locate a matching method. </param>
      <param name="modifiers">An array of parameter modifiers that enable binding to work with parameter signatures in which the types have been modified. </param>
      <param name="bindingFlags">
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;param name="bindingFlags"/&gt; documentation for "M:PostSharp.Reflection.CustomReflectionBinder.SelectMethod(System.Reflection.BindingFlags,System.Reflection.MethodBase[],System.Type[],System.Reflection.ParameterModifier[])"]</p>
      </param>
      <returns>The matching method, if found; otherwise, null.</returns>
      <exception cref="T:System.Reflection.AmbiguousMatchException">For the default binder, <paramref name="match" /> contains multiple methods that are equally good matches for the parameter types described by <paramref name="types" />. For example, the array in <paramref name="types" /> contains a <see cref="T:System.Type" /> object for MyClass and the array in <paramref name="match" /> contains a method that takes a base class of MyClass and a method that takes an interface that MyClass implements. </exception>
      <exception cref="T:System.ArgumentException">For the default binder, <paramref name="match" /> is null or an empty array.-or-An element of <paramref name="types" /> derives from <see cref="T:System.Type" />, but is not of type RuntimeType.</exception>
    </member>
    <member name="M:PostSharp.Reflection.CustomReflectionBinder.SelectProperty(System.Reflection.BindingFlags,System.Reflection.PropertyInfo[],System.Type,System.Type[],System.Reflection.ParameterModifier[])">
      <summary>Selects a property from the given set of properties, based on the specified criteria.</summary>
      <param name="bindingAttr">A bitwise combination of <see cref="T:System.Reflection.BindingFlags" /> values. </param>
      <param name="match">The set of properties that are candidates for matching. For example, when a <see cref="T:System.Reflection.Binder" /> object is used by <see cref="Overload:System.Type.InvokeMember" />, this parameter specifies the set of properties that reflection has determined to be possible matches, typically because they have the correct member name. The default implementation provided by <see cref="P:System.Type.DefaultBinder" /> changes the order of this array.</param>
      <param name="returnType">The return value the matching property must have. </param>
      <param name="indexes">The index types of the property being searched for. Used for index properties such as the indexer for a class. </param>
      <param name="modifiers">An array of parameter modifiers that enable binding to work with parameter signatures in which the types have been modified. </param>
      <param name="bindingFlags">
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;param name="bindingFlags"/&gt; documentation for "M:PostSharp.Reflection.CustomReflectionBinder.SelectProperty(System.Reflection.BindingFlags,System.Reflection.PropertyInfo[],System.Type,System.Type[],System.Reflection.ParameterModifier[])"]</p>
      </param>
      <returns>The matching property.</returns>
      <exception cref="T:System.Reflection.AmbiguousMatchException">For the default binder, <paramref name="match" /> contains multiple properties that are equally good matches for <paramref name="returnType" /> and <paramref name="indexes" />. </exception>
      <exception cref="T:System.ArgumentException">For the default binder, <paramref name="match" /> is null or an empty array. </exception>
    </member>
    <member name="T:PostSharp.Reflection.IAssemblyName">
      <summary>
              Defines the semantics of an assembly name.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.IAssemblyName.Culture">
      <summary>
              Gets the assembly culture name.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.IAssemblyName.GetPublicKey">
      <summary>
              Gets the assembly public key.
            </summary>
      <returns>An array of bytes containing the public key,
              or <c>null</c> if no public key is specified.</returns>
    </member>
    <member name="M:PostSharp.Reflection.IAssemblyName.GetPublicKeyToken">
      <summary>
              Gets the assembly public key token.
            </summary>
      <returns>An array of bytes containing the public key token,
              or <c>null</c> if no public key is specified.</returns>
    </member>
    <member name="P:PostSharp.Reflection.IAssemblyName.IsMscorlib">
      <summary>
              Determines whether the current assembly (or assembly reference) is <c>mscorlib</c>.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.IAssemblyName.IsStronglyNamed">
      <summary>
              Determines whether the current assembly (or assembly reference) contains a strong name signature.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.IAssemblyName.Name">
      <summary>
              Gets the assembly friendly name.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.IAssemblyName.ProcessorArchitecture">
      <summary>
              Gets the processor architecture that the current assembly targets.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.IAssemblyName.Version">
      <summary>
              Gets the assembly version.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.IAssemblyWrapper">
      <summary>
              Represents an <see cref="T:System.Reflection.Assembly" /> without giving directly the <see cref="T:System.Reflection.Assembly" />
              object. The object allows browsing of contained types and of custom attributes.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.IAssemblyWrapper.GetTypes">
      <summary>
              Gets the list of types defined in this assembly.
            </summary>
      <returns>The list of types defined in this assembly.</returns>
    </member>
    <member name="P:PostSharp.Reflection.IAssemblyWrapper.UnderlyingSystemAssembly">
      <summary>
              Gets the system <see cref="T:System.Reflection.Assembly" /> corresponding to the current object.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.ICodeReference">
      <summary>
              Represents a reference between two declarations.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.ICodeReference.ReferencedDeclaration">
      <summary>
              Gets the declaration referenced by the other.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.ICodeReference.ReferenceKind">
      <summary>
              Gets the kind of code reference.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.ICodeReference.ReferencingDeclaration">
      <summary>
              Gets the declaration referencing the other.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.IMetadataDispenser">
      <summary>
              Semantics of service that deserializes metadata objects (i.e. reflection objects) that have 
              been serialized by <see cref="T:PostSharp.Reflection.IMetadataEmitter" />.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.IMetadataDispenser.GetMetadata(System.Int32)">
      <summary>
              Gets the reflection object corresponding to the given index.
            </summary>
      <param name="index">Index returned by <see cref="M:PostSharp.Reflection.IMetadataEmitter.GetMetadataIndex(System.Object)" />
              at build time.</param>
      <returns>The reflection object corresponding to <paramref name="index" />.</returns>
    </member>
    <member name="T:PostSharp.Reflection.IMetadataEmitter">
      <summary>
              Semantics of a service that allows build-time code to serialize references
              to metadata objects (i.e. reflection objects) in a way that is compatible with obfuscators.
              References are deserialized at run-time using <see cref="T:PostSharp.Reflection.IMetadataDispenser" />.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.IMetadataEmitter.GetMetadataIndex(System.Object)">
      <summary>
              Gets the index of a serialized metadata reference.
            </summary>
      <param name="metadata">A reflection object.</param>
      <returns>The index of <paramref name="metadata" />, to be serialized
              and deserialized at runtime with <see cref="M:PostSharp.Reflection.IMetadataDispenser.GetMetadata(System.Int32)" />.</returns>
    </member>
    <member name="T:PostSharp.Reflection.IReflectionWrapper">
      <summary>
              Interface implemented by all reflection wrappers.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.IReflectionWrapper.DeclaringAssemblyName">
      <summary>
              Gets the name of the assembly declaring the current element.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.IReflectionWrapper.UnderlyingSystemObject">
      <summary>
              Gets the system object (<see cref="T:System.Type" />, <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodInfo" />,
              <see cref="T:System.Reflection.ConstructorInfo" />, <see cref="T:System.Reflection.ParameterInfo" />, ...) corresponding to the current wrapper.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.ISourceDocument">
      <summary>
              Represents a file of source code.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.ISourceDocument.DocumentType">
      <summary>
              Document type (<see cref="T:System.Guid" /> according to Microsoft PDB specification).
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.ISourceDocument.FileName">
      <summary>
              Full path of the file.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.ISourceDocument.Language">
      <summary>
              Language (<see cref="T:System.Guid" /> according to Microsoft PDB specification).
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.ISourceDocument.LanguageVendor">
      <summary>
              Language vendor (<see cref="T:System.Guid" /> according to Microsoft PDB specification).
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.LocationInfo">
      <summary>
              Represents a <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.PropertyInfo" /> or
              <see cref="T:System.Reflection.ParameterInfo" />, which all have the semantics of a location (get value, set value).
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.#ctor(System.Reflection.FieldInfo)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Reflection.LocationInfo" /> from a <see cref="T:System.Reflection.FieldInfo" />.
            </summary>
      <param name="fieldInfo">The field represented by the <see cref="T:PostSharp.Reflection.LocationInfo" />.</param>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.#ctor(System.Reflection.ParameterInfo)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Reflection.LocationInfo" /> from a <see cref="T:System.Reflection.ParameterInfo" />.
            </summary>
      <param name="parameterInfo">The parameter represented by the <see cref="T:PostSharp.Reflection.LocationInfo" />.</param>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.#ctor(System.Reflection.PropertyInfo)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Reflection.LocationInfo" /> from a <see cref="T:System.Reflection.PropertyInfo" />.
            </summary>
      <param name="propertyInfo">The property represented by the <see cref="T:PostSharp.Reflection.LocationInfo" />.</param>
    </member>
    <member name="P:PostSharp.Reflection.LocationInfo.DeclaringType">
      <summary>
              Gets the declaring type of the underlying field, property, parameter, or return value.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.Equals(PostSharp.Reflection.LocationInfo)">
      <summary>Indicates whether the current object is equal to another object of the same type.</summary>
      <param name="other">An object to compare with this object.</param>
      <returns>true if the current object is equal to the <paramref name="other" /> parameter; otherwise, false.</returns>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.Equals(System.Object)">
      <summary>Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.</summary>
      <param name="obj">The object to compare with the current object. </param>
      <returns>true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.</returns>
    </member>
    <member name="P:PostSharp.Reflection.LocationInfo.FieldInfo">
      <summary>
              Gets the underlying <see cref="T:System.Reflection.FieldInfo" />,
              or <c>null</c> if the underlying code element is not a property.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.GetHashCode">
      <summary>Serves as a hash function for a particular type. </summary>
      <returns>A hash code for the current <see cref="T:System.Object" />.</returns>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo" /> with the data needed to serialize the target object.</summary>
      <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> to populate with data. </param>
      <param name="context">The destination (see <see cref="T:System.Runtime.Serialization.StreamingContext" />) for this serialization. </param>
      <exception cref="T:System.Security.SecurityException">The caller does not have the required permission. </exception>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.GetValue(System.Object)">
      <summary>
              Returns the value of the field or property represented by the current object.
            </summary>
      <param name="instance">The object whose field  or property value will be returned (<c>null</c> if the
              field or property is static).</param>
      <returns>The value of the field or property.</returns>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.GetValue(System.Object,System.Object[])">
      <summary>
              Returns the value of the field or property represented by the current object 
              with optional index values for indexed properties.
            </summary>
      <param name="instance">The object whose field  or property value will be returned (<c>null</c> if the
              field or property is static).</param>
      <param name="index">Optional index values for indexed properties. <c>null</c> for fields or non-index
              properties.</param>
      <returns>The value of the field or property.</returns>
    </member>
    <member name="P:PostSharp.Reflection.LocationInfo.IsStatic">
      <summary>
              Determines whether the underlying field or property is static.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.LocationInfo.LocationKind">
      <summary>
              Gets the location kind (<see cref="F:PostSharp.Reflection.LocationKind.Field" />,
              <see cref="F:PostSharp.Reflection.LocationKind.Property" />,
              <see cref="F:PostSharp.Reflection.LocationKind.Parameter" /> or
              <see cref="F:PostSharp.Reflection.LocationKind.ReturnValue" />).
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.LocationInfo.LocationType">
      <summary>
              Gets the type of values that can be stored in the location.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.LocationInfo.Name">
      <summary>
              Gets the name of the underlying field, property, parameter, or return value.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.op_Equality(PostSharp.Reflection.LocationInfo,PostSharp.Reflection.LocationInfo)">
      <summary>
              Determines whether two instances of <see cref="T:PostSharp.Reflection.LocationInfo" /> represent the same element of code.
            </summary>
      <param name="left">A <see cref="T:PostSharp.Reflection.LocationInfo" />.</param>
      <param name="right">A <see cref="T:PostSharp.Reflection.LocationInfo" />.</param>
      <returns>
        <c>true</c> if <paramref name="left" /> and <paramref name="right" /> are equal, otherwise <c>false</c>.</returns>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.op_Inequality(PostSharp.Reflection.LocationInfo,PostSharp.Reflection.LocationInfo)">
      <summary>
              Determines whether two instances of <see cref="T:PostSharp.Reflection.LocationInfo" /> represent different elements of code.
            </summary>
      <param name="left">A <see cref="T:PostSharp.Reflection.LocationInfo" />.</param>
      <param name="right">A <see cref="T:PostSharp.Reflection.LocationInfo" />.</param>
      <returns>
        <c>true</c> if <paramref name="left" /> and <paramref name="right" /> are different, otherwise <c>false</c>.</returns>
    </member>
    <member name="P:PostSharp.Reflection.LocationInfo.ParameterInfo">
      <summary>
              Gets the underlying <see cref="T:System.Reflection.ParameterInfo" />,
              or <c>null</c> if the underlying code element is not a property.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.LocationInfo.PropertyInfo">
      <summary>
              Gets the underlying <see cref="T:System.Reflection.PropertyInfo" />,
              or <c>null</c> if the underlying code element is not a property.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.SetValue(System.Object,System.Object)">
      <summary>
              Sets the value of the field or property represented by the current object to a given value.
            </summary>
      <param name="instance">The object whose field  or property value will be changed (<c>null</c> if the
              field or property is static).</param>
      <param name="value">New value.</param>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.SetValue(System.Object,System.Object,System.Object[])">
      <summary>
              Sets the value of the field or property represented by the current object to a given value
              with optional index values for indexed properties.
            </summary>
      <param name="instance">The object whose field  or property value will be changed (<c>null</c> if the
              field or property is static).</param>
      <param name="value">New value.</param>
      <param name="index">Optional index values for indexed properties. <c>null</c> for fields or non-index
              properties.</param>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.ToLocationInfo(System.Object)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Reflection.LocationInfo" /> from a
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.PropertyInfo" />, or <see cref="T:System.Reflection.ParameterInfo" />.
            </summary>
      <param name="reflectionInfo">
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;param name="reflectionInfo"/&gt; documentation for "M:PostSharp.Reflection.LocationInfo.ToLocationInfo(System.Object)"]</p>
      </param>
      <returns>
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;returns&gt; documentation for "M:PostSharp.Reflection.LocationInfo.ToLocationInfo(System.Object)"]</p>
      </returns>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.ToLocationInfoArray(System.Collections.Generic.ICollection{System.Reflection.FieldInfo})">
      <summary>
              Converts a collection of <see cref="P:PostSharp.Reflection.LocationInfo.FieldInfo" /> into an array of <see cref="T:PostSharp.Reflection.LocationInfo" />.
            </summary>
      <param name="fields">A collection of <see cref="P:PostSharp.Reflection.LocationInfo.FieldInfo" />.</param>
      <returns>An array of <see cref="T:PostSharp.Reflection.LocationInfo" />.</returns>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.ToLocationInfoArray(System.Collections.Generic.ICollection{System.Reflection.ParameterInfo})">
      <summary>
              Converts a collection of <see cref="P:PostSharp.Reflection.LocationInfo.ParameterInfo" /> into an array of <see cref="T:PostSharp.Reflection.LocationInfo" />.
            </summary>
      <param name="parameters">A collection of <see cref="P:PostSharp.Reflection.LocationInfo.ParameterInfo" />.</param>
      <returns>An array of <see cref="T:PostSharp.Reflection.LocationInfo" />.</returns>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.ToLocationInfoArray(System.Collections.Generic.ICollection{System.Reflection.PropertyInfo})">
      <summary>
              Converts a collection of <see cref="P:PostSharp.Reflection.LocationInfo.PropertyInfo" /> into an array of <see cref="T:PostSharp.Reflection.LocationInfo" />.
            </summary>
      <param name="properties">A collection of <see cref="P:PostSharp.Reflection.LocationInfo.PropertyInfo" />.</param>
      <returns>An array of <see cref="T:PostSharp.Reflection.LocationInfo" />.</returns>
    </member>
    <member name="M:PostSharp.Reflection.LocationInfo.ToString">
      <summary>Returns a string that represents the current object.</summary>
      <returns>A string that represents the current object.</returns>
    </member>
    <member name="T:PostSharp.Reflection.LocationKind">
      <summary>
              Enumerates the kinds of code elements that can be encapsulated by a <see cref="T:PostSharp.Reflection.LocationInfo" />.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.LocationKind.Field">
      <summary>
        <see cref="T:System.Reflection.FieldInfo" />.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.LocationKind.Property">
      <summary>
        <see cref="T:System.Reflection.PropertyInfo" />.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.LocationKind.Parameter">
      <summary>
              A <see cref="T:System.Reflection.ParameterInfo" /> representing a parameter (not a <see cref="F:PostSharp.Reflection.LocationKind.ReturnValue" />).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.LocationKind.ReturnValue">
      <summary>
              A <see cref="T:System.Reflection.ParameterInfo" /> representing a return value.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.MemberName">
      <summary>
              Uniquely identifies a member (field, method, property, or event)
              in the scope of a type and a member kind.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.MemberName.#ctor(System.String,System.String)">
      <summary>
              Creates a new <see cref="T:PostSharp.Reflection.MemberName" />.
            </summary>
      <param name="name">Member name.</param>
      <param name="signature">Member signature (<c>null</c> for member kinds
              without parameters).</param>
    </member>
    <member name="P:PostSharp.Reflection.MemberName.IsNull">
      <summary>
              Determines whether the current <see cref="T:PostSharp.Reflection.MemberName" /> is <c>null</c>.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.MemberName.Name">
      <summary>
              Gets the member name.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MemberName.Null">
      <summary>
              Gets a <c>null</c> instance of <see cref="T:PostSharp.Reflection.MemberName" />.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.MemberName.Signature">
      <summary>
              Gets the member signature.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.MemberTypeCodeReference">
      <summary>
            Represents a relationship between a type and a member of this type.
            A member can be a <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.PropertyInfo" />, or
            <see cref="T:System.Reflection.ParameterInfo" />.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.MemberTypeCodeReference.Member">
      <summary>
            Gets the member (<see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.PropertyInfo" />, or
            <see cref="T:System.Reflection.ParameterInfo" />).
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.MemberTypeCodeReference.Type">
      <summary>
            Gets the member type.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.MethodUsageCodeReference">
      <summary>
            Represents a relationship between a declaration (<see cref="T:System.Type" />,
            <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodInfo" /> or <see cref="T:System.Reflection.ConstructorInfo" />)
            and a method whose instructions (method body) use the declaration.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.MethodUsageCodeReference.Instructions">
      <summary>
            Gets the instructions that reference <see cref="P:PostSharp.Reflection.MethodUsageCodeReference.UsedDeclaration" />.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.MethodUsageCodeReference.UsedDeclaration">
      <summary>
            Gets the declaration (<see cref="T:System.Type" />, <see cref="T:System.Reflection.MethodInfo" />
            or <see cref="T:System.Reflection.ConstructorInfo" />) used by the method.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.MethodUsageCodeReference.UsedType">
      <summary>
            Gets the <see cref="T:System.Type" /> used by the method. If the current
            object represents a reference to a <see cref="T:System.Reflection.MethodInfo" />
            or <see cref="T:System.Reflection.ConstructorInfo" />, this property returns the declaring
            type of the method or constructor.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.MethodUsageCodeReference.UsingMethod">
      <summary>
            Gets the method (<see cref="T:System.Reflection.MethodInfo" /> or <see cref="T:System.Reflection.ConstructorInfo" />)
            whose body uses the declaration.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.MethodUsageInstructions">
      <summary>
            Instructions whose operands can reference a declaration.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.None">
      <summary>
            No instruction.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.LoadField">
      <summary>
            Get field value.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.StoreField">
      <summary>
            Set field value.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.Call">
      <summary>
            Call to a static or sealed method.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.CallVirtual">
      <summary>
            Call to a virtual method.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.NewObject">
      <summary>
            Creation of a new instance (invoke the constructor).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.LoadFieldAddress">
      <summary>
            Get field address.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.LoadMetadata">
      <summary>
            Load the metadata token (for instance <c>typeof</c>).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.LoadMethodAddress">
      <summary>
            Load the address of a static or sealed method (delegate instantiation).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.LoadMethodAddressVirtual">
      <summary>
            Load the address of a virtual method (delegate instantiation).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.Cast">
      <summary>
            Type casting.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.IsInstance">
      <summary>
            "Safe" type casting (<c>as</c> or <c>is</c> in C#).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.SizeOf">
      <summary>
            Get the size of a value type (<c>sizeof</c> in C#).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.MethodUsageInstructions.NewArray">
      <summary>
            Create a new array of a type.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.ObjectConstruction">
      <summary>
              Specifies how an object should be constructed, i.e. specifies the constructor to be
              used, the arguments to be passed to this constructor, and the fields or properties to
              be set.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.ObjectConstruction.#ctor(System.Reflection.ConstructorInfo,System.Object[])">
      <summary>
              Initializes a new type-safe <see cref="T:PostSharp.Reflection.ObjectConstruction" /> from a <see cref="T:System.Reflection.ConstructorInfo" />.
            </summary>
      <param name="constructor">Constructor.</param>
      <param name="constructorArguments">Arguments passed to the constructor.</param>
    </member>
    <member name="M:PostSharp.Reflection.ObjectConstruction.#ctor(System.Reflection.CustomAttributeData)">
      <summary>
              Initializes a new type-safe <see cref="T:PostSharp.Reflection.ObjectConstruction" /> from a <see cref="T:System.Reflection.CustomAttributeData" /></summary>
      <param name="customAttributeData">A <see cref="T:System.Reflection.CustomAttributeData" /></param>
    </member>
    <member name="M:PostSharp.Reflection.ObjectConstruction.#ctor(System.String,System.Object[])">
      <summary>
              Initializes a new <see cref="T:PostSharp.Reflection.ObjectConstruction" /> by specifying a type name and a list of constructor arguments.
            </summary>
      <param name="typeName">Name of the object type.</param>
      <param name="constructorArguments">Arguments passed to the constructor.</param>
    </member>
    <member name="M:PostSharp.Reflection.ObjectConstruction.#ctor(System.Type,System.Object[])">
      <summary>
              Initializes a new <see cref="T:PostSharp.Reflection.ObjectConstruction" /> by specifying a type name and a list of constructor arguments.
            </summary>
      <param name="type">Object type.</param>
      <param name="constructorArguments">Arguments passed to the constructor.</param>
    </member>
    <member name="P:PostSharp.Reflection.ObjectConstruction.Constructor">
      <summary>
              Gets the custom attribute constructor.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.ObjectConstruction.ConstructorArguments">
      <summary>
              Gets the arguments passed to the custom attribute constructor.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.ObjectConstruction.NamedArguments">
      <summary>
              Gets the collection of named arguments.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.ObjectConstruction.TypeName">
      <summary>
              Gets the assembly-qualified type name of the object.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.ReflectionHelper">
      <summary>
            Provides helper methods for work with <see cref="N:System.Reflection" />.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,PostSharp.Reflection.MemberName)">
      <summary>
            Gets an <see cref="T:System.Reflection.EventInfo" /> given its declaring type and name.
            </summary>
      <param name="declaringType">Type declaring the property.</param>
      <param name="eventName">Name and signature of the property.</param>
      <returns>The property.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionHelper.GetEvent(System.Type,PostSharp.Reflection.MemberName,PostSharp.Reflection.MemberName,PostSharp.Reflection.MemberName,PostSharp.Reflection.MemberName)">
      <summary>
            Gets an <see cref="T:System.Reflection.EventInfo" /> given its declaring type and name. If the event has been stripped out
            by an obfuscator, returns a object emulating the event.
            </summary>
      <param name="declaringType">Type declaring the property.</param>
      <param name="eventName">Name and signature of the property.</param>
      <param name="addMethodName">Name and signature of the <c>add</c> method.</param>
      <param name="removeMethodName">Name and signature of the <c>remove</c> method.</param>
      <param name="raiseMethodName">Name and signature of the <c>raise</c> method.</param>
      <returns>The property.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionHelper.GetField(System.Type,PostSharp.Reflection.MemberName)">
      <summary>
            Gets a <see cref="T:System.Reflection.FieldInfo" /> given its declaring type and name.
            </summary>
      <param name="declaringType">Type declaring the field.</param>
      <param name="fieldName">Name of the field.</param>
      <returns>The field.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionHelper.GetLocation(System.Type,PostSharp.Reflection.MemberName,PostSharp.Reflection.LocationKind)">
      <summary>
            Gets a <see cref="T:PostSharp.Reflection.LocationInfo" /> object for a field or a property given its name and signature.
            </summary>
      <param name="declaringType">Type declaring the field or property. Note that fields will fall back to properties.</param>
      <param name="locationName">Name of the field or property.</param>
      <param name="locationKind">Kind of location (field or property).</param>
      <returns>The location.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionHelper.GetLocation(System.Type,PostSharp.Reflection.MemberName,PostSharp.Reflection.LocationKind,PostSharp.Reflection.MemberName,PostSharp.Reflection.MemberName)">
      <summary>
            Gets a <see cref="T:PostSharp.Reflection.LocationInfo" /> object for a field or a property given its name and signature.
            If the property has been stripped out by an obfuscator, returns a object emulating the property.
            </summary>
      <param name="declaringType">Type declaring the field or property.  Note that fields will fall back to properties.</param>
      <param name="locationName">Name of the field or property.</param>
      <param name="locationKind">Kind of location (field or property).</param>
      <param name="getterName">Name and signature of the getter.</param>
      <param name="setterName">Name and signature of the setter.</param>
      <returns>The location.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionHelper.GetMethod(System.Type,PostSharp.Reflection.MemberName)">
      <summary>
            Gets a <see cref="T:System.Reflection.MethodBase" /> given its declaring type, name, and signature.
            </summary>
      <param name="declaringType">Type declaring the method.</param>
      <param name="methodName">Name and signature of the method.</param>
      <returns>The method.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionHelper.GetMethod(System.Type,System.String,System.String)">
      <summary>
              Identifies and gets a method in a type given its complete string-serialized signature.
            </summary>
      <param name="declaringType">Type declaring the method.</param>
      <param name="methodName">Method name.</param>
      <param name="methodSignature">Method signature (from <c>MethodBase.ToString()</c>).</param>
      <returns>The method (or constructor) with signature <paramref name="methodSignature" />
              in <paramref name="declaringType" />, or <c>null</c> if such method was not found.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,PostSharp.Reflection.MemberName)">
      <summary>
            Gets a <see cref="T:System.Reflection.PropertyInfo" /> given its declaring type, name, and signature.
            </summary>
      <param name="declaringType">Type declaring the property.</param>
      <param name="propertyName">Name and signature of the property.</param>
      <returns>The property.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,PostSharp.Reflection.MemberName,PostSharp.Reflection.MemberName,PostSharp.Reflection.MemberName)">
      <summary>
            Gets a <see cref="T:System.Reflection.PropertyInfo" /> given its declaring type, name, and signature. If the property has been stripped out
            by an obfuscator, returns a object emulating the property.
            </summary>
      <param name="declaringType">Type declaring the property.</param>
      <param name="propertyName">Name and signature of the property.</param>
      <param name="getterName">Name and signature of the getter.</param>
      <param name="setterName">Name and signature of the setter.</param>
      <returns>The property.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionHelper.GetProperty(System.Type,System.String,System.String)">
      <summary>
              Identifies and gets a property in a type given its complete string-serialized signature.
            </summary>
      <param name="declaringType">Type declaring the property.</param>
      <param name="propertyName">Property name.</param>
      <param name="propertySignature">Property signature (from <c>PropertyInfo.ToString</c>).</param>
      <returns>The property, or <c>null</c> if the property was not found.</returns>
    </member>
    <member name="T:PostSharp.Reflection.ReflectionSearch">
      <summary>
              Set of static methods providing broader access to assembly metadata than
              the <c>System.Reflection</c> namespace. These methods are only
              available at build time.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionSearch.GetCustomAttributesOfType(System.Type)">
      <summary>
              Gets all custom attributes of a given type in the assembly being currently processed.
            </summary>
      <param name="customAttributeType">
        <see cref="T:System.Type" /> of the custom attribute.</param>
      <returns>The set of all custom attributes of type <paramref name="customAttributeType" />
              defined in  the assembly being currently processed.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionSearch.GetCustomAttributesOfType(System.Type,PostSharp.Reflection.ReflectionSearchOptions)">
      <summary>
              Gets all custom attributes of a given type in the assembly being currently processed and specifies 
              additional options.
            </summary>
      <param name="customAttributeType">
        <see cref="T:System.Type" /> of the custom attribute.</param>
      <param name="options">Any combination of options <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.IncludeDerivedTypes" />  and 
            <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.UseReflectionWrappers" />.</param>
      <returns>The set of all custom attributes of type <paramref name="customAttributeType" /> (or any type derived
              from <paramref name="customAttributeType" />, if the option <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.IncludeDerivedTypes" /> 
              is <c>true</c>) defined in  the assembly being currently processed.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionSearch.GetCustomAttributesOnTarget(System.Object,PostSharp.Reflection.ReflectionSearchOptions)">
      <summary>
              Gets all custom attributes on a given element of code, including those who have beed added indirectly, for
              instance through <see cref="T:PostSharp.Extensibility.MulticastAttribute" /> and specifies additional options.
            </summary>
      <param name="target">Element of code (<see cref="T:System.Type" />, <see cref="T:System.Reflection.MethodInfo" />, ...) whose
              custom attributes are requested.</param>
      <param name="options">
        <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.UseReflectionWrappers" /> or <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.None" />.</param>
      <returns>The set of all custom attributes added, directly or indirectly, to <paramref name="target" />.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionSearch.GetCustomAttributesOnTarget(System.Reflection.ICustomAttributeProvider)">
      <summary>
              Gets all custom attributes on a given element of code, including those who have beed added indirectly, for
              instance through <see cref="T:PostSharp.Extensibility.MulticastAttribute" />.
            </summary>
      <param name="target">Element of code (<see cref="T:System.Type" />, <see cref="T:System.Reflection.MethodInfo" />, ...) whose
              custom attributes are requested.</param>
      <returns>The set of all custom attributes added, directly or indirectly, to <paramref name="target" />.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionSearch.GetDeclarationsUsedByMethod(System.Reflection.MethodBase)">
      <summary>
              Gets all declarations (<see cref="T:System.Type" />,
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodInfo" /> or <see cref="T:System.Reflection.ConstructorInfo" />) used
              by the body of a given method or constructor.
            </summary>
      <param name="method">A <see cref="T:System.Reflection.MethodInfo" /> or <see cref="T:System.Reflection.ConstructorInfo" />.</param>
      <returns>An array of <see cref="T:PostSharp.Reflection.MethodUsageCodeReference" /> containing one
              item for each declaration used by the body of <paramref name="method" />.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionSearch.GetDeclarationsUsedByMethod(System.Reflection.MethodBase,PostSharp.Reflection.ReflectionSearchOptions)">
      <summary>
              Gets all declarations (<see cref="T:System.Type" />,
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodInfo" /> or <see cref="T:System.Reflection.ConstructorInfo" />) used
              by the body of a given method or constructor and specifies additional options.
            </summary>
      <param name="method">A <see cref="T:System.Reflection.MethodInfo" /> or <see cref="T:System.Reflection.ConstructorInfo" />.</param>
      <param name="options">
        <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.UseReflectionWrappers" /> or <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.None" />.</param>
      <returns>An array of <see cref="T:PostSharp.Reflection.MethodUsageCodeReference" /> containing one
              item for each declaration used by the body of <paramref name="method" />.
            </returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionSearch.GetDerivedTypes(System.Type)">
      <summary>
              Gets the set of types derived from a given class or implementing a given interface.
            </summary>
      <param name="baseType">A class or interface.</param>
      <returns>The set of types derived from or implementing <paramref name="baseType" />.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionSearch.GetDerivedTypes(System.Type,PostSharp.Reflection.ReflectionSearchOptions)">
      <summary>
              Gets the set of types derived from a given class or implementing a given interface.
              and specifies aditional options.
            </summary>
      <param name="baseType">A class or interface.</param>
      <param name="options">Any valid combination of the options <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.UseReflectionWrappers" />,
            <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.IncludeTypeElement" /> (partial type match), and 
            <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.IncludeDerivedTypes" /> (deep search). 
            <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.IncludeTypeElement" /> and <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.IncludeDerivedTypes" />
            cannot be used together.</param>
      <returns>The set of types derived from or implementing <paramref name="baseType" />.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionSearch.GetMembersOfType(System.Type)">
      <summary>
              Gets all members (<see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.PropertyInfo" />, or
              <see cref="T:System.Reflection.ParameterInfo" />) of the assembly being processed of a given type.
            </summary>
      <param name="memberType">Member type.</param>
      <returns>The set of all members of type <paramref name="memberType" /> in the assembly being processed</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionSearch.GetMembersOfType(System.Type,PostSharp.Reflection.ReflectionSearchOptions)">
      <summary>
              Gets all members (<see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.PropertyInfo" />, or
              <see cref="T:System.Reflection.ParameterInfo" />) of the assembly being processed of a given type and specifies additional options.
            </summary>
      <param name="memberType">Member type.</param>
      <param name="options">Any combination of the options <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.UseReflectionWrappers" /> and
            <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.IncludeTypeElement" /> (partial type match).
            </param>
      <returns>The set of all members of type <paramref name="memberType" /> in the assembly being processed</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionSearch.GetMethodsUsingDeclaration(System.Reflection.MemberInfo)">
      <summary>
              Gets the set of methods and constructors whose body references a given (<see cref="T:System.Type" />,
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodInfo" /> or <see cref="T:System.Reflection.ConstructorInfo" />).
            </summary>
      <param name="declaration">The <see cref="T:System.Type" />,
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodInfo" /> or <see cref="T:System.Reflection.ConstructorInfo" />
              whose references are requested.</param>
      <returns>An array of <see cref="T:PostSharp.Reflection.MethodUsageCodeReference" /> containing one
              item for each method or constructor whose body references <paramref name="declaration" />.
            </returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionSearch.GetMethodsUsingDeclaration(System.Reflection.MemberInfo,PostSharp.Reflection.ReflectionSearchOptions)">
      <summary>
              Gets the set of methods and constructors whose body references a given (<see cref="T:System.Type" />,
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodInfo" /> or <see cref="T:System.Reflection.ConstructorInfo" />)
              and specifies whether
              reflection wrappers should be used instead of runtime reflection objects.
            </summary>
      <param name="declaration">The <see cref="T:System.Type" />,
              <see cref="T:System.Reflection.FieldInfo" />, <see cref="T:System.Reflection.MethodInfo" /> or <see cref="T:System.Reflection.ConstructorInfo" />
              whose references are requested.</param>
      <param name="options">Any combination of the options <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.UseReflectionWrappers" />
            and <see cref="F:PostSharp.Reflection.ReflectionSearchOptions.IncludeTypeElement" /> (partial type match).</param>
      <returns>An array of <see cref="T:PostSharp.Reflection.MethodUsageCodeReference" /> containing one
              item for each method or constructor whose body references <paramref name="declaration" />.
            </returns>
    </member>
    <member name="T:PostSharp.Reflection.ReflectionSearchOptions">
      <summary>
        <p style="color: #dc143c; font-size: 8.5pt; font-weight: bold;">[Missing &lt;summary&gt; documentation for "T:PostSharp.Reflection.ReflectionSearchOptions"]</p>
      </summary>
    </member>
    <member name="F:PostSharp.Reflection.ReflectionSearchOptions.None">
      <summary>
            No option.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.ReflectionSearchOptions.IncludeDerivedTypes">
      <summary>
            Include relationships referencing a derived type (instead of exactly that type).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.ReflectionSearchOptions.IncludeTypeElement">
      <summary>
            Include relationships referencing a type signature including the given type (instead of only the given type).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.ReflectionSearchOptions.UseReflectionWrappers">
      <summary>
              Use reflection wrappers instead of runtime reflection objects.
              Reflection wrappers implement standard reflection classes 
              (<see cref="T:System.Type" />, <see cref="T:System.Reflection.MethodInfo" />, ...), but do not require the CLR
              to load the type. Reflection wrappers should be used only when the CLR is not able to load the type,
              for instance because the type is not valid for runtime execution. This happens for instance when the
              type has an <c>extern</c> method implemented after compilation by PostSharp.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.ReflectionTypeComparer">
      <summary>
              Comparer of reflection types (<see cref="T:System.Type" />) based on content, not reference.
              Supports the unbound generic parameters derived from the <see cref="T:PostSharp.Reflection.GenericArgs.GenericArg" /> class.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionTypeComparer.Equals(System.Type,System.Type)">
      <summary>Determines whether the specified objects are equal.</summary>
      <param name="x">The first object of type <paramref name="T" /> to compare.</param>
      <param name="y">The second object of type <paramref name="T" /> to compare.</param>
      <returns>true if the specified objects are equal; otherwise, false.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionTypeComparer.Equals(System.Type[],System.Type[])">
      <summary>Determines whether the specified objects are equal.</summary>
      <param name="x">The first object of type <paramref name="T" /> to compare.</param>
      <param name="y">The second object of type <paramref name="T" /> to compare.</param>
      <returns>true if the specified objects are equal; otherwise, false.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionTypeComparer.GetHashCode(System.Type)">
      <summary>Returns a hash code for the specified object.</summary>
      <param name="obj">The <see cref="T:System.Object" /> for which a hash code is to be returned.</param>
      <returns>A hash code for the specified object.</returns>
      <exception cref="T:System.ArgumentNullException">The type of <paramref name="obj" /> is a reference type and <paramref name="obj" /> is null.</exception>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionTypeComparer.GetHashCode(System.Type[])">
      <summary>Returns a hash code for the specified object.</summary>
      <param name="obj">The <see cref="T:System.Object" /> for which a hash code is to be returned.</param>
      <returns>A hash code for the specified object.</returns>
      <exception cref="T:System.ArgumentNullException">The type of <paramref name="obj" /> is a reference type and <paramref name="obj" /> is null.</exception>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionTypeComparer.GetInstance">
      <summary>
              Gets an instance of <see cref="T:PostSharp.Reflection.ReflectionTypeComparer" /> that does not perform
              substitution of generic parameters.
            </summary>
      <returns>An instance of <see cref="T:PostSharp.Reflection.ReflectionTypeComparer" />.</returns>
    </member>
    <member name="M:PostSharp.Reflection.ReflectionTypeComparer.GetInstance(System.Type[],System.Type[],System.Type[],System.Type[])">
      <summary>
              Gets an instance of <see cref="T:PostSharp.Reflection.ReflectionTypeComparer" /> that performs
              substitution of generic parameters.
            </summary>
      <param name="leftGenericMethodParameters">Array of types to be substituted to the
              generic method parameters of the left member.</param>
      <param name="leftGenericTypeParameters">Array of types to be substituted to the
              generic type parameters of the left member.</param>
      <param name="rightGenericMethodParameters">Array of types to be substituted to the
              generic method parameters of the right member.</param>
      <param name="rightGenericTypeParameters">Array of types to be substituted to the
              generic type parameters of the right member.</param>
      <returns>An instance of <see cref="T:PostSharp.Reflection.ReflectionTypeComparer" />.</returns>
    </member>
    <member name="T:PostSharp.Reflection.SymbolSequencePoint">
      <summary>
              Maps a point in IL instructions to location in source code.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.SymbolSequencePoint.#ctor(System.Int32,System.Int32,System.Int32,System.Int32,PostSharp.Reflection.ISourceDocument)">
      <summary>
              Initializes a new <see cref="T:PostSharp.Reflection.SymbolSequencePoint" />.
            </summary>
      <param name="startLine">The start line in the source file.</param>
      <param name="startColumn">The start column in the source file.</param>
      <param name="endLine">The end line in the source file.</param>
      <param name="endColumn">The end column in the source file.</param>
      <param name="document">Source file</param>
    </member>
    <member name="P:PostSharp.Reflection.SymbolSequencePoint.EndColumn">
      <summary>
              Gets the end column in the source file.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.SymbolSequencePoint.EndLine">
      <summary>
              Gets the end line in the source file.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.SymbolSequencePoint.Equals(PostSharp.Reflection.SymbolSequencePoint)">
      <summary>Indicates whether the current object is equal to another object of the same type.</summary>
      <param name="other">An object to compare with this object.</param>
      <returns>true if the current object is equal to the <paramref name="other" /> parameter; otherwise, false.</returns>
    </member>
    <member name="M:PostSharp.Reflection.SymbolSequencePoint.Equals(System.Object)">
      <summary>Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.</summary>
      <param name="obj">The object to compare with the current object. </param>
      <returns>true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.</returns>
    </member>
    <member name="M:PostSharp.Reflection.SymbolSequencePoint.GetHashCode">
      <summary>Serves as a hash function for a particular type. </summary>
      <returns>A hash code for the current <see cref="T:System.Object" />.</returns>
    </member>
    <member name="F:PostSharp.Reflection.SymbolSequencePoint.Hidden">
      <summary>
              Gets a symbol meaning that the associated instructions have no source code.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.SymbolSequencePoint.IsHidden">
      <summary>
              Determines whether the current symbol means that the associated
              instructions have no source code..
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.SymbolSequencePoint.op_Equality(PostSharp.Reflection.SymbolSequencePoint,PostSharp.Reflection.SymbolSequencePoint)">
      <summary>
              Determines whether two sequence points are equal.
            </summary>
      <param name="left">A <see cref="T:PostSharp.Reflection.SymbolSequencePoint" />.</param>
      <param name="right">A <see cref="T:PostSharp.Reflection.SymbolSequencePoint" />.</param>
      <returns>
        <c>true</c> if both sequence points are equal, otherwise <c>false</c>.</returns>
    </member>
    <member name="M:PostSharp.Reflection.SymbolSequencePoint.op_Inequality(PostSharp.Reflection.SymbolSequencePoint,PostSharp.Reflection.SymbolSequencePoint)">
      <summary>
              Determines whether two sequence points are different.
            </summary>
      <param name="left">A <see cref="T:PostSharp.Reflection.SymbolSequencePoint" />.</param>
      <param name="right">A <see cref="T:PostSharp.Reflection.SymbolSequencePoint" />.</param>
      <returns>
        <c>true</c> if both sequence points are different, otherwise <c>false</c>.</returns>
    </member>
    <member name="P:PostSharp.Reflection.SymbolSequencePoint.SourceDocument">
      <summary>
            Document (file of source code) containing the current sequence point.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.SymbolSequencePoint.StartColumn">
      <summary>
              Gets the start column in the source file.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.SymbolSequencePoint.StartLine">
      <summary>
              Gets the start line in the source file.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.SymbolSequencePoint.ToString">
      <summary>Returns a string that represents the current object.</summary>
      <returns>A string that represents the current object.</returns>
    </member>
    <member name="T:PostSharp.Reflection.TypeInheritanceCodeReference">
      <summary>
            Represents a inheritance relationship between two types.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.TypeInheritanceCodeReference.BaseType">
      <summary>
            Gets the base type. If the base type is a generic type, this property contains
            a generic type instance.
            </summary>
    </member>
    <member name="P:PostSharp.Reflection.TypeInheritanceCodeReference.DerivedType">
      <summary>
            Gets the derived type.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.Visibility">
      <summary>
              Visibility of types and type members.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.Visibility.Public">
      <summary>
              Public.
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.Visibility.Family">
      <summary>
              Family (protected).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.Visibility.Assembly">
      <summary>
              Assembly (internal).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.Visibility.FamilyOrAssembly">
      <summary>
              Family or assembly (protected internal).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.Visibility.FamilyAndAssembly">
      <summary>
              Family and assembly (no C# equivalent: protected types inside the current assembly).
            </summary>
    </member>
    <member name="F:PostSharp.Reflection.Visibility.Private">
      <summary>
              Private.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericArg">
      <summary>
              Classes derived from <see cref="T:PostSharp.Reflection.GenericArgs.GenericArg" /> represent unbound generic arguments.
              It is a 'trick' to create unbound generic instances, because C# and <c>System.Reflection</c>
              does not make it possible. Use the <see cref="M:PostSharp.Reflection.GenericArgs.GenericArg.Map(System.Type,System.Type[],System.Type[])" /> method to bind the unbound
              generic arguments to concrete types.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericArg.Map(System.Type,System.Type[],System.Type[])">
      <summary>
              Binds unbound generic arguments to concrete types.
            </summary>
      <param name="type">A <see cref="T:System.Type" /> containing unbound generic arguments
              (derived from <see cref="T:PostSharp.Reflection.GenericArgs.GenericArg" />).</param>
      <param name="genericTypeParameters">Array of types to which
              the unbound generic type arguments should be bound.</param>
      <param name="genericMethodParameters">Array of types to which
              the unbound generic method parameters should be bound.</param>
      <returns>A <see cref="T:System.Type" /> where unbound generic arguments have been replaced
              by <paramref name="genericTypeParameters" /> and <paramref name="genericMethodParameters" />.</returns>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericMethodArg">
      <summary>
              Classes derived from <see cref="T:PostSharp.Reflection.GenericArgs.GenericMethodArg" /> represent unbound generic method parameters.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericMethodArg0">
      <summary>
              Unbound generic method argument. Reference to the 0-th generic method argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericMethodArg0.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericMethodArg0" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericMethodArg1">
      <summary>
              Unbound generic method argument. Reference to the 1-th generic method argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericMethodArg1.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericMethodArg1" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericMethodArg2">
      <summary>
              Unbound generic method argument. Reference to the 2-th generic method argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericMethodArg2.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericMethodArg2" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericMethodArg3">
      <summary>
              Unbound generic method argument. Reference to the 3-th generic method argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericMethodArg3.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericMethodArg0" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericMethodArg4">
      <summary>
              Unbound generic method argument. Reference to the 4-th generic method argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericMethodArg4.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericMethodArg4" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericMethodArg5">
      <summary>
              Unbound generic method argument. Reference to the 5-th generic method argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericMethodArg5.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericMethodArg5" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericMethodArg6">
      <summary>
              Unbound generic method argument. Reference to the 6-th generic method argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericMethodArg6.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericMethodArg6" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericMethodArg7">
      <summary>
              Unbound generic method argument. Reference to the 7-th generic method argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericMethodArg7.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericMethodArg7" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericMethodArg8">
      <summary>
              Unbound generic method argument. Reference to the 8-th generic method argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericMethodArg8.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericMethodArg8" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericMethodArg9">
      <summary>
              Unbound generic method argument. Reference to the 9-th generic method argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericMethodArg9.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericMethodArg9" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericTypeArg">
      <summary>
              Classes derived from <see cref="T:PostSharp.Reflection.GenericArgs.GenericTypeArg" /> represent unbound generic type parameters.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericTypeArg0">
      <summary>
              Unbound generic type argument. Reference to the 0-th generic type argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericTypeArg0.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericTypeArg0" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericTypeArg1">
      <summary>
              Unbound generic type argument. Reference to the 1-th generic type argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericTypeArg1.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericTypeArg1" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericTypeArg2">
      <summary>
              Unbound generic type argument. Reference to the 2-th generic type argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericTypeArg2.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericTypeArg2" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericTypeArg3">
      <summary>
              Unbound generic type argument. Reference to the 3-th generic type argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericTypeArg3.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericTypeArg3" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericTypeArg4">
      <summary>
              Unbound generic type argument. Reference to the 4-th generic type argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericTypeArg4.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericTypeArg4" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericTypeArg5">
      <summary>
              Unbound generic type argument. Reference to the 5-th generic type argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericTypeArg5.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericTypeArg5" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericTypeArg6">
      <summary>
              Unbound generic type argument. Reference to the 6-th generic type argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericTypeArg6.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericTypeArg6" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericTypeArg7">
      <summary>
              Unbound generic type argument. Reference to the 7-th generic type argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericTypeArg7.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericTypeArg7" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericTypeArg8">
      <summary>
              Unbound generic type argument. Reference to the 8-th generic type argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericTypeArg8.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericTypeArg7" />.
            </summary>
    </member>
    <member name="T:PostSharp.Reflection.GenericArgs.GenericTypeArg9">
      <summary>
              Unbound generic type argument. Reference to the 9-th generic type argument.
            </summary>
    </member>
    <member name="M:PostSharp.Reflection.GenericArgs.GenericTypeArg9.#ctor">
      <summary>
            Initializes a new <see cref="T:PostSharp.Reflection.GenericArgs.GenericTypeArg9" />.
            </summary>
    </member>
  </members>
</doc>