using System; using System.IO; using System.Reflection; namespace Atomic.Bootstrap { /// /// A context in which assemblies can be loaded. /// public interface IAssemblyLoadContext : IDisposable { /// /// Load an assembly by name. /// /// The name of the assembly. /// The loaded assembly. Assembly Load(AssemblyName assemblyName); /// /// Loads the assembly located at the provided file system path. /// /// The fully qualified path of the file to load. /// The loaded assembly. Assembly LoadFile(string path); /// /// Loads the assembly with a common object file format (COFF)-based image containing an emitted assembly, optionally including symbols for the assembly. /// /// The stream representing the assembly. /// The stream representing the symbols. /// The loaded assembly. Assembly LoadStream(Stream assemblyStream, Stream assemblySymbols); } }