PageRenderTime 101ms CodeModel.GetById 40ms app.highlight 1ms RepoModel.GetById 59ms app.codeStats 0ms

/src/LinFu.AOP/Interfaces/IHostWeaver.cs

http://github.com/philiplaureano/LinFu
C# | 23 lines | 9 code | 2 blank | 12 comment | 0 complexity | c92d11186b5c406e4394c50e388c7d5d MD5 | raw file
 1using Mono.Cecil;
 2
 3namespace LinFu.AOP.Cecil.Interfaces
 4{
 5    /// <summary>
 6    ///     Represents a weaver class that can modify its host.
 7    /// </summary>
 8    /// <typeparam name="THost">The host that holds the item to be modified.</typeparam>
 9    public interface IHostWeaver<THost>
10    {
11        /// <summary>
12        ///     Imports references into the target <see cref="ModuleDefinition" /> instance.
13        /// </summary>
14        /// <param name="module">The module that will hold the modified item.</param>
15        void ImportReferences(ModuleDefinition module);
16
17        /// <summary>
18        ///     Adds additional members to the host type.
19        /// </summary>
20        /// <param name="host">The host that holds the current item being modified.</param>
21        void AddAdditionalMembers(THost host);
22    }
23}