Open sandboxFocus
  • TOC

Post­Sharp Documentation

Introduction

Deployment and Configuration

Adding Aspects to Code

Logging

Contracts

INotify­Property­Changed

Weak Event

XAML

Parent/Child, Visitor and Disposable

Undo/Redo

Caching

Multithreading

Developing Custom Aspects

Validating Architecture

Testing and Debugging

Miscellaneous

API Reference

Post­Sharp

Post­Sharp.​Aspects

Post­Sharp.​Aspects.​Advices

Post­Sharp.​Aspects.​Configuration

Post­Sharp.​Aspects.​Dependencies

Post­Sharp.​Aspects.​Internals

Post­Sharp.​Aspects.​Serialization

Post­Sharp.​Collections

Post­Sharp.​Constraints

Post­Sharp.​Extensibility

Post­Sharp.​Extensibility.​Build­Time­Logging

Post­Sharp.​Patterns

Post­Sharp.​Patterns.​Caching

Post­Sharp.​Patterns.​Caching.​Backends

Post­Sharp.​Patterns.​Caching.​Backends.​Azure

Post­Sharp.​Patterns.​Caching.​Backends.​Redis

Post­Sharp.​Patterns.​Caching.​Dependencies

Post­Sharp.​Patterns.​Caching.​Formatters

Post­Sharp.​Patterns.​Caching.​Implementation

Post­Sharp.​Patterns.​Caching.​Locking

Post­Sharp.​Patterns.​Caching.​Serializers

Post­Sharp.​Patterns.​Caching.​Value­Adapters

Post­Sharp.​Patterns.​Collections

Post­Sharp.​Patterns.​Collections.​Advices

Post­Sharp.​Patterns.​Contracts

Post­Sharp.​Patterns.​Diagnostics

Post­Sharp.​Patterns.​Diagnostics.​Adapters.​Asp­Net­Core

Post­Sharp.​Patterns.​Diagnostics.​Adapters.​Asp­Net­Framework

Post­Sharp.​Patterns.​Diagnostics.​Adapters.​Diagnostic­Source

Post­Sharp.​Patterns.​Diagnostics.​Adapters.​Http­Client

Post­Sharp.​Patterns.​Diagnostics.​Audit

Post­Sharp.​Patterns.​Diagnostics.​Backends

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Application­Insights

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Audit

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Common­Logging

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Console

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Event­Source

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Log4Net

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Microsoft

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Multiplexer

Post­Sharp.​Patterns.​Diagnostics.​Backends.​NLog

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Null

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Serilog

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Trace

Post­Sharp.​Patterns.​Diagnostics.​Backends.​Trace­Source

Post­Sharp.​Patterns.​Diagnostics.​Contexts

Post­Sharp.​Patterns.​Diagnostics.​Correlation

Post­Sharp.​Patterns.​Diagnostics.​Custom

Post­Sharp.​Patterns.​Diagnostics.​Custom.​Messages

Post­Sharp.​Patterns.​Diagnostics.​Formatters

Post­Sharp.​Patterns.​Diagnostics.​Record­Builders

Post­Sharp.​Patterns.​Diagnostics.​Threading­Instrumentation

Post­Sharp.​Patterns.​Diagnostics.​Transactions

Post­Sharp.​Patterns.​Diagnostics.​Transactions.​Model

Post­Sharp.​Patterns.​Dynamic­Advising

Post­Sharp.​Patterns.​Formatters

Post­Sharp.​Patterns.​Model

Post­Sharp.​Patterns.​Model.​Controls

Post­Sharp.​Patterns.​Model.​Type­Adapters

Post­Sharp.​Patterns.​Recording

Post­Sharp.​Patterns.​Recording.​Operations

Post­Sharp.​Patterns.​Threading

Post­Sharp.​Patterns.​Threading.​Models

Post­Sharp.​Patterns.​Utilities

Post­Sharp.​Patterns.​Xaml

Post­Sharp.​Reflection

Post­Sharp.​Reflection.​Method­Body

Post­Sharp.​Serialization

  • Article

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).