PageRenderTime 125ms CodeModel.GetById 40ms app.highlight 2ms RepoModel.GetById 69ms app.codeStats 0ms

/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
 1using LinFu.AOP.Interfaces;
 2using Mono.Cecil;
 3using Mono.Cecil.Cil;
 4
 5namespace LinFu.AOP.Cecil.Interfaces
 6{
 7    /// <summary>
 8    ///     Represents a class that emits
 9    ///     the IL to save information about
10    ///     the method currently being executed.
11    /// </summary>
12    public interface IEmitInvocationInfo
13    {
14        /// <summary>
15        ///     Emits the IL to save information about
16        ///     the method currently being executed.
17        /// </summary>
18        /// <seealso cref="IInvocationInfo" />
19        /// <param name="targetMethod">The target method currently being executed.</param>
20        /// <param name="currentMethod">
21        ///     The method that will be passed to the <paramref name="invocationInfo" /> as the currently
22        ///     executing method.
23        /// </param>
24        /// <param name="invocationInfo">The local variable that will store the resulting <see cref="IInvocationInfo" /> instance.</param>
25        void Emit(MethodDefinition targetMethod, MethodReference currentMethod, VariableDefinition invocationInfo);
26    }
27}