Exemplo n.º 1
0
        public static Reflector.CodeModel.ITypeDeclaration Cecil2Reflector(TypeDefinition td)
        {
            Reflector.CodeModel.IModule m = Cecil2Reflector(td.Module);
            if (m == null)
            {
                return(null);
            }

            foreach (Reflector.CodeModel.ITypeDeclaration t in m.Types)
            {
                if (IsEqual(t, td))
                {
                    return(t);
                }
                if (t.NestedTypes.Count > 0)
                {
                    Reflector.CodeModel.ITypeDeclaration t2 = Cecil2Reflector(td, t.NestedTypes);
                    if (t2 != null)
                    {
                        return(t2);
                    }
                }
            }
            return(null);
        }
Exemplo n.º 2
0
        public static Reflector.CodeModel.IModuleReference Cecil2Reflector(ModuleReference mr, ModuleDefinition md)
        {
            Reflector.CodeModel.IModule m = Cecil2Reflector(md);
            if (m == null)
            {
                return(null);
            }

            string mrName = mr.Name;

            foreach (Reflector.CodeModel.IModuleReference mrTmp in m.ModuleReferences)
            {
                if (mrTmp.Name == mrName)
                {
                    return(mrTmp);
                }
            }
            return(null);
        }
Exemplo n.º 3
0
        public static Reflector.CodeModel.IResource Cecil2Reflector(Resource r, ModuleDefinition md)
        {
            Reflector.CodeModel.IModule m = Cecil2Reflector(md);
            if (m == null)
            {
                return(null);
            }

            string erName = r.Name;

            foreach (Reflector.CodeModel.IResource r2 in m.Assembly.Resources)
            {
                if (r2.Name == erName)
                {
                    return(r2);
                }
            }
            return(null);
        }
Exemplo n.º 4
0
        public static Reflector.CodeModel.IAssemblyReference Cecil2Reflector(AssemblyNameReference anr, ModuleDefinition md)
        {
            Reflector.CodeModel.IModule m = Cecil2Reflector(md);
            if (m == null)
            {
                return(null);
            }

            string anrName = anr.ToString();

            foreach (Reflector.CodeModel.IAssemblyReference ar in m.AssemblyReferences)
            {
                if (ar.ToString() == anrName)
                {
                    return(ar);
                }
            }
            return(null);
        }