コード例 #1
0
 public virtual void VisitModuleReferenceCollection(ModuleReferenceCollection modules)
 {
     foreach (ModuleReference module in modules)
     {
         VisitModuleReference(module);
     }
 }
コード例 #2
0
		public override void VisitModuleReferenceCollection (ModuleReferenceCollection modules)
		{
			foreach (ModuleReference module in modules) {
				m_writer.Write (".module extern ");
				m_writer.WriteLine (Formater.Escape (module.Name));
			}

			if (modules.Count > 0)
				m_writer.WriteLine ();
		}
コード例 #3
0
        public override void VisitModuleReferenceCollection(ModuleReferenceCollection modules)
        {
            if (!m_tHeap.HasTable(ModuleRefTable.RId))
            {
                return;
            }

            ModuleRefTable mrTable = m_tableReader.GetModuleRefTable();

            for (int i = 0; i < mrTable.Rows.Count; i++)
            {
                ModuleRefRow    mrRow = mrTable [i];
                ModuleReference mod   = new ModuleReference(ReadString(mrRow.Name));
                mod.MetadataToken = MetadataToken.FromMetadataRow(TokenType.ModuleRef, i);
                modules.Add(mod);
            }
        }
コード例 #4
0
        internal ModuleDefinition(string name, AssemblyDefinition asm, StructureReader reader, bool main) : base(name)
        {
            if (asm == null)
            {
                throw new ArgumentNullException("asm");
            }
            if (name == null || name.Length == 0)
            {
                throw new ArgumentNullException("name");
            }

            m_asm  = asm;
            m_main = main;
#if !CF_1_0
            m_mvid = Guid.NewGuid();
#endif
            if (reader != null)
            {
                m_image        = reader.Image;
                m_imgReader    = reader.ImageReader;
                m_manifestOnly = reader.ManifestOnly;
            }
            else
            {
                m_image = Image.CreateImage();
            }

            m_modRefs = new ModuleReferenceCollection(this);
            m_asmRefs = new AssemblyNameReferenceCollection(this);
            m_res     = new ResourceCollection(this);
            m_types   = new TypeDefinitionCollection(this);
            m_types.OnTypeDefinitionAdded   += new TypeDefinitionEventHandler(OnTypeDefinitionAdded);
            m_types.OnTypeDefinitionRemoved += new TypeDefinitionEventHandler(OnTypeDefinitionRemoved);
            m_refs = new TypeReferenceCollection(this);
            m_refs.OnTypeReferenceAdded   += new TypeReferenceEventHandler(OnTypeReferenceAdded);
            m_refs.OnTypeReferenceRemoved += new TypeReferenceEventHandler(OnTypeReferenceRemoved);
            m_members = new MemberReferenceCollection(this);

            m_controller = new ReflectionController(this);
        }
コード例 #5
0
ファイル: StructureWriter.cs プロジェクト: nobled/mono
		public override void VisitModuleReferenceCollection (ModuleReferenceCollection modules)
		{
			VisitCollection (modules);
		}
コード例 #6
0
 public override void VisitModuleReferenceCollection(ModuleReferenceCollection modules)
 {
     VisitCollection(modules);
 }
コード例 #7
0
		ModuleReference GetModuleReference (ModuleReferenceCollection members, string name)
		{
			foreach (ModuleReference mr in members) {
				if (mr.Name == name)
					return mr;
			}
			return null;
		}
コード例 #8
0
		bool ModuleReferencesContains (ModuleReferenceCollection members, string name)
		{
			ModuleReference mr = GetModuleReference (members, name);
			return mr != null;
		}
コード例 #9
0
		public override void VisitModuleReferenceCollection (ModuleReferenceCollection modules)
		{
			if (!m_tHeap.HasTable (ModuleRefTable.RId))
				return;

			ModuleRefTable mrTable = m_tableReader.GetModuleRefTable ();
			for (int i = 0; i < mrTable.Rows.Count; i++) {
				ModuleRefRow mrRow = mrTable [i];
				ModuleReference mod = new ModuleReference (ReadString (mrRow.Name));
				mod.MetadataToken = MetadataToken.FromMetadataRow (TokenType.ModuleRef, i);
				modules.Add (mod);
			}
		}
コード例 #10
0
		public virtual void VisitModuleReferenceCollection (ModuleReferenceCollection modules)
		{
		}
コード例 #11
0
		ModuleReference GetModuleReference (ModuleReferenceCollection members, ModuleReference module)
		{
			string name = module.Name;
			name = name.ToLower ();
			if (!BaseAssemblyResolver.OnMono ()) {
				if (!name.EndsWith (".dll"))
					name += ".dll";
			}

			foreach (ModuleReference mr in members) {
				if (mr.Name == name)
					return mr;
			}
			return null;
		}
コード例 #12
0
        internal ModuleDefinition(string name, AssemblyDefinition asm, StructureReader reader, bool main)
            : base(name)
        {
            if (asm == null)
                throw new ArgumentNullException ("asm");
            if (name == null || name.Length == 0)
                throw new ArgumentNullException ("name");

            m_asm = asm;
            m_main = main;
            #if !CF_1_0
            m_mvid = Guid.NewGuid ();
            #endif
            if (reader != null) {
                m_image = reader.Image;
                m_imgReader = reader.ImageReader;
                m_manifestOnly = reader.ManifestOnly;
            } else
                m_image = Image.CreateImage ();

            m_modRefs = new ModuleReferenceCollection (this);
            m_asmRefs = new AssemblyNameReferenceCollection (this);
            m_res = new ResourceCollection (this);
            m_types = new TypeDefinitionCollection (this);
            m_types.OnTypeDefinitionAdded += new TypeDefinitionEventHandler (OnTypeDefinitionAdded);
            m_types.OnTypeDefinitionRemoved += new TypeDefinitionEventHandler (OnTypeDefinitionRemoved);
            m_refs = new TypeReferenceCollection (this);
            m_refs.OnTypeReferenceAdded += new TypeReferenceEventHandler (OnTypeReferenceAdded);
            m_refs.OnTypeReferenceRemoved += new TypeReferenceEventHandler (OnTypeReferenceRemoved);
            m_members = new MemberReferenceCollection (this);

            m_controller = new ReflectionController (this);
        }
コード例 #13
0
 public virtual void VisitModuleReferenceCollection(ModuleReferenceCollection modules)
 {
 }