public override void VisitAssemblyRefTable(AssemblyRefTable table)
        {
            int number = m_rows [AssemblyRefTable.RId];

            table.Rows = new RowCollection(number);
            for (int i = 0; i < number; i++)
            {
                table.Rows.Add(new AssemblyRefRow());
            }
        }
示例#2
0
        public AssemblyRefTable GetAssemblyRefTable()
        {
            AssemblyRefTable table = m_heap [AssemblyRefTable.RId] as AssemblyRefTable;

            if (table != null)
            {
                return(table);
            }

            table = new AssemblyRefTable();
            InitializeTable(table);
            return(table);
        }
示例#3
0
        public AssemblyRefTable GetAssemblyRefTable()
        {
            int rid = AssemblyRefTable.RId;

            if (m_heap.HasTable(rid))
            {
                return(m_heap [rid] as AssemblyRefTable);
            }

            AssemblyRefTable table = new AssemblyRefTable();

            table.Rows    = new RowCollection();
            m_heap.Valid |= 1L << rid;
            m_heap.Tables.Add(table);
            return(table);
        }
示例#4
0
		public AssemblyRefTable GetAssemblyRefTable ()
		{
			AssemblyRefTable table = m_heap [AssemblyRefTable.RId] as AssemblyRefTable;
			if (table != null)
				return table;

			table = new AssemblyRefTable ();
			InitializeTable (table);
			return table;
		}
示例#5
0
 public override void VisitAssemblyRefTable(AssemblyRefTable table)
 {
     int number = m_rows [AssemblyRefTable.RId];
     table.Rows = new RowCollection (number);
     for (int i = 0; i < number; i++)
         table.Rows.Add (new AssemblyRefRow ());
 }
        public AssemblyRefTable GetAssemblyRefTable()
        {
            int rid = AssemblyRefTable.RId;
            if (m_heap.HasTable (rid))
                return m_heap [rid] as AssemblyRefTable;

            AssemblyRefTable table = new AssemblyRefTable ();
            table.Rows = new RowCollection ();
            m_heap.Valid |= 1L << rid;
            m_heap.Tables.Add (table);
            return table;
        }
示例#7
0
		void EncodeAssemblyRefTable (AssemblyRefTable table)
		{
			int index = 0;

			foreach (AssemblyRefRow row in table.Rows) {
				this.asm.ALIGN (Assembly.OBJECT_ALIGNMENT);
				this.asm.LABEL (moduleName + " AssemblyRefRow#" + index);
				this.asm.AddObjectFields (typeof (SharpOS.AOT.Metadata.AssemblyRefRow).ToString ());
				this.asm.DATA (row.MajorVersion);
				this.asm.DATA (row.MinorVersion);
				this.asm.DATA (row.BuildNumber);
				this.asm.DATA (row.RevisionNumber);
				this.asm.DATA ((uint)row.Flags);
				this.asm.DATA (row.PublicKeyOrToken);
				this.asm.DATA (row.Name);
				this.asm.DATA (row.Culture);
				this.asm.DATA (row.HashValue);
				++index;
			}

			this.MetadataArray ("AssemblyRef", table);
		}