104 lines
3.5 KiB
C#
104 lines
3.5 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Runtime.InteropServices;
|
|
|
|
namespace System.Reflection
|
|
{
|
|
/// <summary>Provides access to the metadata and MSIL for the body of a method.</summary>
|
|
// Token: 0x0200024D RID: 589
|
|
[ComVisible(true)]
|
|
public sealed class MethodBody
|
|
{
|
|
// Token: 0x06001E78 RID: 7800 RVA: 0x00071120 File Offset: 0x0006F320
|
|
internal MethodBody()
|
|
{
|
|
}
|
|
|
|
/// <summary>Gets a list that includes all the exception-handling clauses in the method body.</summary>
|
|
/// <returns>An <see cref="T:System.Collections.Generic.IList`1" /> of <see cref="T:System.Reflection.ExceptionHandlingClause" /> objects representing the exception-handling clauses in the body of the method.</returns>
|
|
// Token: 0x1700059B RID: 1435
|
|
// (get) Token: 0x06001E79 RID: 7801 RVA: 0x00071128 File Offset: 0x0006F328
|
|
public IList<ExceptionHandlingClause> ExceptionHandlingClauses
|
|
{
|
|
get
|
|
{
|
|
return Array.AsReadOnly<ExceptionHandlingClause>(this.clauses);
|
|
}
|
|
}
|
|
|
|
/// <summary>Gets the list of local variables declared in the method body.</summary>
|
|
/// <returns>An <see cref="T:System.Collections.Generic.IList`1" /> of <see cref="T:System.Reflection.LocalVariableInfo" /> objects that describe the local variables declared in the method body.</returns>
|
|
// Token: 0x1700059C RID: 1436
|
|
// (get) Token: 0x06001E7A RID: 7802 RVA: 0x00071138 File Offset: 0x0006F338
|
|
public IList<LocalVariableInfo> LocalVariables
|
|
{
|
|
get
|
|
{
|
|
return Array.AsReadOnly<LocalVariableInfo>(this.locals);
|
|
}
|
|
}
|
|
|
|
/// <summary>Gets a value indicating whether local variables in the method body are initialized to the default values for their types.</summary>
|
|
/// <returns>true if the method body contains code to initialize local variables to null for reference types, or to the zero-initialized value for value types; otherwise, false.</returns>
|
|
// Token: 0x1700059D RID: 1437
|
|
// (get) Token: 0x06001E7B RID: 7803 RVA: 0x00071148 File Offset: 0x0006F348
|
|
public bool InitLocals
|
|
{
|
|
get
|
|
{
|
|
return this.init_locals;
|
|
}
|
|
}
|
|
|
|
/// <summary>Gets a metadata token for the signature that describes the local variables for the method in metadata.</summary>
|
|
/// <returns>An integer that represents the metadata token.</returns>
|
|
// Token: 0x1700059E RID: 1438
|
|
// (get) Token: 0x06001E7C RID: 7804 RVA: 0x00071150 File Offset: 0x0006F350
|
|
public int LocalSignatureMetadataToken
|
|
{
|
|
get
|
|
{
|
|
return this.sig_token;
|
|
}
|
|
}
|
|
|
|
/// <summary>Gets the maximum number of items on the operand stack when the method is executing.</summary>
|
|
/// <returns>The maximum number of items on the operand stack when the method is executing.</returns>
|
|
// Token: 0x1700059F RID: 1439
|
|
// (get) Token: 0x06001E7D RID: 7805 RVA: 0x00071158 File Offset: 0x0006F358
|
|
public int MaxStackSize
|
|
{
|
|
get
|
|
{
|
|
return this.max_stack;
|
|
}
|
|
}
|
|
|
|
/// <summary>Returns the MSIL for the method body, as an array of bytes.</summary>
|
|
/// <returns>An array of type <see cref="T:System.Byte" /> that contains the MSIL for the method body. </returns>
|
|
// Token: 0x06001E7E RID: 7806 RVA: 0x00071160 File Offset: 0x0006F360
|
|
public byte[] GetILAsByteArray()
|
|
{
|
|
return this.il;
|
|
}
|
|
|
|
// Token: 0x04000A8E RID: 2702
|
|
private ExceptionHandlingClause[] clauses;
|
|
|
|
// Token: 0x04000A8F RID: 2703
|
|
private LocalVariableInfo[] locals;
|
|
|
|
// Token: 0x04000A90 RID: 2704
|
|
private byte[] il;
|
|
|
|
// Token: 0x04000A91 RID: 2705
|
|
private bool init_locals;
|
|
|
|
// Token: 0x04000A92 RID: 2706
|
|
private int sig_token;
|
|
|
|
// Token: 0x04000A93 RID: 2707
|
|
private int max_stack;
|
|
}
|
|
}
|