obfuz/Plugins/dnlib/DotNet/ICustomAttribute.cs

42 lines
1.1 KiB
C#
Raw Normal View History

// dnlib: See LICENSE.txt for more info
using System.Collections.Generic;
namespace dnlib.DotNet {
/// <summary>
/// Custom attribute interface. Implemented by <see cref="SecurityAttribute"/> and
/// <see cref="CustomAttribute"/>
/// </summary>
public interface ICustomAttribute {
/// <summary>
/// Gets the attribute type
/// </summary>
ITypeDefOrRef AttributeType { get; }
/// <summary>
/// Gets the full name of the attribute type
/// </summary>
string TypeFullName { get; }
/// <summary>
/// Gets all named arguments (field and property values)
/// </summary>
IList<CANamedArgument> NamedArguments { get; }
/// <summary>
/// <c>true</c> if <see cref="NamedArguments"/> is not empty
/// </summary>
bool HasNamedArguments { get; }
/// <summary>
/// Gets all <see cref="CANamedArgument"/>s that are field arguments
/// </summary>
IEnumerable<CANamedArgument> Fields { get; }
/// <summary>
/// Gets all <see cref="CANamedArgument"/>s that are property arguments
/// </summary>
IEnumerable<CANamedArgument> Properties { get; }
}
}