Mono.Cecil.AssemblyDefinition.ReadAssembly C# (CSharp) Method

ReadAssembly() static private method

static private ReadAssembly ( Mono.Cecil.ModuleDefinition module ) : AssemblyDefinition
module Mono.Cecil.ModuleDefinition
return AssemblyDefinition
        static AssemblyDefinition ReadAssembly(ModuleDefinition module)
        {
            var assembly = module.Assembly;
            if (assembly == null)
                throw new ArgumentException ();

            return assembly;
        }

Same methods

AssemblyDefinition::ReadAssembly ( Stream stream ) : AssemblyDefinition
AssemblyDefinition::ReadAssembly ( Stream stream, ReaderParameters parameters ) : AssemblyDefinition
AssemblyDefinition::ReadAssembly ( string fileName ) : AssemblyDefinition
AssemblyDefinition::ReadAssembly ( string fileName, ReaderParameters parameters ) : AssemblyDefinition

Usage Example

        private static IList <Tuple <IUnresolvedAssembly, IList <string>, Assembly> > LoadReferences(IEnumerable <string> references, IErrorReporter er)
        {
            var loader = new CecilLoader {
                IncludeInternalMembers = true
            };
            var assemblies = references.Select(r => AssemblyDefinition.ReadAssembly(r)).ToList();             // Shouldn't result in errors because mcs would have caught it.

            var indirectReferences = (from a in assemblies
                                      from m in a.Modules
                                      from r in m.AssemblyReferences
                                      select r.Name)
                                     .Distinct();

            var directReferences = from a in assemblies select a.Name.Name;

            var missingReferences = indirectReferences.Except(directReferences).ToList();

            if (missingReferences.Count > 0)
            {
                er.Region = DomRegion.Empty;
                foreach (var r in missingReferences)
                {
                    er.Message(Messages._7996, r);
                }
                return(null);
            }

            return(assemblies.Select(asm => Tuple.Create(loader.LoadAssembly(asm), GetReferencedAssemblyNames(asm), LoadPlugin(asm))).ToList());
        }
All Usage Examples Of Mono.Cecil.AssemblyDefinition::ReadAssembly