Open sandboxFocus

Namespace PostSharp.Reflection.MethodBody

Classes

MethodBodyFormatter

Formats an IMethodBodyElement to a textual representation, for debugging purposes.

MethodBodyVisitor

Abstract implementation of a visitor of method bodies (IMethodBody and IExpression).

Structs

LocalVariableAssignment

Represents the assignment of a local variable to an expression.

Interfaces

IAddressOfExpression

Expression that takes the address of the operand. Equivalent to the C# operator &.

IBinaryExpression

Expression that has two operands, Left and Right.

IBlockExpression

Block containing other blocks or instructions.

IConditionalExpression

Conditional expression, corresponding to the if keyword in C#.

IConstantExpression

Expression representing a build-time constant.

ICopyBufferExpression

Expression equivalent to the cpblk instruction.

IExceptionHandler

Represents an exception handler (either catch, finally or filter) attached to a block.

IExpression

Represents an expression or an instruction.

IFieldExpression

Expression that represents a field.

IGotoExpression

Unconditional branching instruction.

IInitBufferExpression

Expression equivalent to the initblk instruction.

ILocalVariable

Expression that represents a local variable.

ILocalVariableExpression

Expression that represents a local variable.

IMetadataExpression

Expression that depends on a metadata declaration. This expression is used when compiling the typeof, sizeof or default keywords of C#, among others.

IMethodBody

Represents the body of a method.

IMethodBodyElement

Represents an element of the syntax tree representing a method body.

IMethodBodyService

Service that exposes the method GetMethodBody(MethodBase, MethodBodyAbstractionLevel), which allows to decompile a method and get a AST representation.

IMethodCallExpression

Expression representing a method call.

IMethodPointerExpression

Expression that represents a C-like pointer to a method.

INewArrayExpression

Expression that returns a new array.

INewObjectExpression

Expression that creates a new object by invoking a constructor.

IParameterExpression

Expression that represents a method parameter.

ISequenceExpression

Sequence of instructions.

IStatementExpression

Represents a statement. A statement is the root of an expression tree.

ISwitchExpression

Expression that represent a switch (conditional statement with multiple branches).

IUnaryExpression

Represents an expression with a single operand.

IValueOfExpression

Expression that returns the value stored at an address. Equivalent to the C# keyword *.

IZeroaryExpression

Expression with no operand.

Enums

AddressAlignment

Enumeration of address alignments for access to unmanaged memory represented by ICopyBufferExpression, IFieldExpression or IValueOfExpression.

ExceptionHandlerKind

Kinds of IExceptionHandler.

MethodBodyAbstractionLevel

Enumerates the level of abstraction and the level of details produced by the AST decompiler.

MethodBodyElementKind

Enumeration of kinds of syntax elements (IMethodBodyElement).