/src/LinFu.AOP/Interfaces/IEmitInvocationInfo.cs
http://github.com/philiplaureano/LinFu · C# · 27 lines · 10 code · 1 blank · 16 comment · 0 complexity · 5a47cc7dc2a1d65a9bc6a4a0e93de6a4 MD5 · raw file
- using LinFu.AOP.Interfaces;
- using Mono.Cecil;
- using Mono.Cecil.Cil;
- namespace LinFu.AOP.Cecil.Interfaces
- {
- /// <summary>
- /// Represents a class that emits
- /// the IL to save information about
- /// the method currently being executed.
- /// </summary>
- public interface IEmitInvocationInfo
- {
- /// <summary>
- /// Emits the IL to save information about
- /// the method currently being executed.
- /// </summary>
- /// <seealso cref="IInvocationInfo" />
- /// <param name="targetMethod">The target method currently being executed.</param>
- /// <param name="currentMethod">
- /// The method that will be passed to the <paramref name="invocationInfo" /> as the currently
- /// executing method.
- /// </param>
- /// <param name="invocationInfo">The local variable that will store the resulting <see cref="IInvocationInfo" /> instance.</param>
- void Emit(MethodDefinition targetMethod, MethodReference currentMethod, VariableDefinition invocationInfo);
- }
- }