Table of Contents

Class MethodBodyDisassembler

Namespace
ICSharpCode.Decompiler.Disassembler
Assembly
ICSharpCode.Decompiler.dll

Disassembles a method body.

public class MethodBodyDisassembler
Inheritance
MethodBodyDisassembler
Inherited Members

Constructors

MethodBodyDisassembler(ITextOutput, CancellationToken)

public MethodBodyDisassembler(ITextOutput output, CancellationToken cancellationToken)

Parameters

output ITextOutput
cancellationToken CancellationToken

Properties

DebugInfo

Optional provider for sequence points.

public IDebugInfoProvider DebugInfo { get; set; }

Property Value

IDebugInfoProvider

DetectControlStructure

Show .try/finally as blocks in IL code; indent loops.

public bool DetectControlStructure { get; set; }

Property Value

bool

ShowMetadataTokens

Show metadata tokens for instructions with token operands.

public bool ShowMetadataTokens { get; set; }

Property Value

bool

ShowMetadataTokensInBase10

Show metadata tokens for instructions with token operands in base 10.

public bool ShowMetadataTokensInBase10 { get; set; }

Property Value

bool

ShowRawRVAOffsetAndBytes

Show raw RVA offset and bytes before each instruction.

public bool ShowRawRVAOffsetAndBytes { get; set; }

Property Value

bool

ShowSequencePoints

Show sequence points if debug information is loaded in Cecil.

public bool ShowSequencePoints { get; set; }

Property Value

bool

Methods

Disassemble(PEFile, MethodDefinitionHandle)

public virtual void Disassemble(PEFile module, MethodDefinitionHandle handle)

Parameters

module PEFile
handle MethodDefinitionHandle

WriteInstruction(ITextOutput, MetadataReader, MethodDefinitionHandle, ref BlobReader, int)

protected virtual void WriteInstruction(ITextOutput output, MetadataReader metadata, MethodDefinitionHandle methodHandle, ref BlobReader blob, int methodRva)

Parameters

output ITextOutput
metadata MetadataReader
methodHandle MethodDefinitionHandle
blob BlobReader
methodRva int