Author: jbevain
Date: 2006-05-18 13:31:30 -0400 (Thu, 18 May 2006)
New Revision: 60830
Modified:
trunk/cecil/lib/ChangeLog
trunk/cecil/lib/CodeGen/templates/MetadataTableReader.cs
trunk/cecil/lib/Mono.Cecil.Metadata/MetadataTableReader.cs
trunk/cecil/lib/Mono.Cecil.Metadata/TableCollection.cs
trunk/cecil/lib/Mono.Cecil.Metadata/TablesHeap.cs
Log:
2006-05-18 Jb Evain <[EMAIL PROTECTED]>
* CodeGen/templates/MetadataTableReader.cs
Mono.Cecil.Metadata/MetadataTableReader.cs
Mono.Cecil.Metadata/TableCollection.cs
Mono.Cecil.Metadata/TablesHeap.cs:
Optimize a little bit.
Modified: trunk/cecil/lib/ChangeLog
===================================================================
--- trunk/cecil/lib/ChangeLog 2006-05-18 17:27:50 UTC (rev 60829)
+++ trunk/cecil/lib/ChangeLog 2006-05-18 17:31:30 UTC (rev 60830)
@@ -1,5 +1,11 @@
2006-05-18 Jb Evain <[EMAIL PROTECTED]>
+ * CodeGen/templates/MetadataTableReader.cs
+ Mono.Cecil.Metadata/MetadataTableReader.cs
+ Mono.Cecil.Metadata/TableCollection.cs
+ Mono.Cecil.Metadata/TablesHeap.cs:
+ Optimize a little bit.
+
* CodeGen/templates/MetadataTableWriter.cs
Mono.Cecil.Metadata/MetadataTableWriter.cs
Mono.Cecil.Metadata/TableCollection.cs:
Modified: trunk/cecil/lib/CodeGen/templates/MetadataTableReader.cs
===================================================================
--- trunk/cecil/lib/CodeGen/templates/MetadataTableReader.cs 2006-05-18
17:27:50 UTC (rev 60829)
+++ trunk/cecil/lib/CodeGen/templates/MetadataTableReader.cs 2006-05-18
17:31:30 UTC (rev 60830)
@@ -42,7 +42,7 @@
MetadataRowReader m_mrrv;
BinaryReader m_binaryReader;
- public readonly IDictionary Rows = new Hashtable
(<%=$tables.length%>);
+ public readonly int [] m_rows = new int
[TablesHeap.MaxTableCount];
public MetadataTableReader (MetadataReader mrv)
{
@@ -68,17 +68,9 @@
return m_mrrv;
}
- void ReadNumberOfRows (int rid)
- {
- this.Rows [rid] = m_binaryReader.ReadInt32 ();
- }
-
public int GetNumberOfRows (int rid)
{
- object n = this.Rows [rid];
- if (n != null)
- return (int) n;
- return 0;
+ return m_rows [rid];
}
<% $tables.each { |table| %>
public <%=table.table_name%> Get<%=table.table_name%> ()
@@ -90,13 +82,13 @@
{
<% $stables.each { |table| %> if (m_heap.HasTable
(<%=table.table_name%>.RId)) {
coll.Add (new <%=table.table_name%> ());
- ReadNumberOfRows (<%=table.table_name%>.RId);
+ m_rows [<%=table.table_name%>.RId] =
m_binaryReader.ReadInt32 ();
}
<% } %> }
<% $tables.each { |table| %> public override void
Visit<%=table.table_name%> (<%=table.table_name%> table)
{
- int number = GetNumberOfRows
(<%=table.table_name%>.RId);
+ int number = m_rows [<%=table.table_name%>.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new <%=table.row_name%> ());
Modified: trunk/cecil/lib/Mono.Cecil.Metadata/MetadataTableReader.cs
===================================================================
--- trunk/cecil/lib/Mono.Cecil.Metadata/MetadataTableReader.cs 2006-05-18
17:27:50 UTC (rev 60829)
+++ trunk/cecil/lib/Mono.Cecil.Metadata/MetadataTableReader.cs 2006-05-18
17:31:30 UTC (rev 60830)
@@ -5,7 +5,7 @@
// Jb Evain ([EMAIL PROTECTED])
//
// Generated by /CodeGen/cecil-gen.rb do not edit
-// Thu May 18 16:26:37 CEST 2006
+// Thu May 18 19:26:17 CEST 2006
//
// (C) 2005 Jb Evain
//
@@ -42,7 +42,7 @@
MetadataRowReader m_mrrv;
BinaryReader m_binaryReader;
- public readonly IDictionary Rows = new Hashtable (38);
+ public readonly int [] m_rows = new int
[TablesHeap.MaxTableCount];
public MetadataTableReader (MetadataReader mrv)
{
@@ -68,17 +68,9 @@
return m_mrrv;
}
- void ReadNumberOfRows (int rid)
- {
- this.Rows [rid] = m_binaryReader.ReadInt32 ();
- }
-
public int GetNumberOfRows (int rid)
{
- object n = this.Rows [rid];
- if (n != null)
- return (int) n;
- return 0;
+ return m_rows [rid];
}
public AssemblyTable GetAssemblyTable ()
@@ -275,420 +267,420 @@
{
if (m_heap.HasTable (ModuleTable.RId)) {
coll.Add (new ModuleTable ());
- ReadNumberOfRows (ModuleTable.RId);
+ m_rows [ModuleTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (TypeRefTable.RId)) {
coll.Add (new TypeRefTable ());
- ReadNumberOfRows (TypeRefTable.RId);
+ m_rows [TypeRefTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (TypeDefTable.RId)) {
coll.Add (new TypeDefTable ());
- ReadNumberOfRows (TypeDefTable.RId);
+ m_rows [TypeDefTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (FieldTable.RId)) {
coll.Add (new FieldTable ());
- ReadNumberOfRows (FieldTable.RId);
+ m_rows [FieldTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (MethodTable.RId)) {
coll.Add (new MethodTable ());
- ReadNumberOfRows (MethodTable.RId);
+ m_rows [MethodTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (ParamTable.RId)) {
coll.Add (new ParamTable ());
- ReadNumberOfRows (ParamTable.RId);
+ m_rows [ParamTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (InterfaceImplTable.RId)) {
coll.Add (new InterfaceImplTable ());
- ReadNumberOfRows (InterfaceImplTable.RId);
+ m_rows [InterfaceImplTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (MemberRefTable.RId)) {
coll.Add (new MemberRefTable ());
- ReadNumberOfRows (MemberRefTable.RId);
+ m_rows [MemberRefTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (ConstantTable.RId)) {
coll.Add (new ConstantTable ());
- ReadNumberOfRows (ConstantTable.RId);
+ m_rows [ConstantTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (CustomAttributeTable.RId)) {
coll.Add (new CustomAttributeTable ());
- ReadNumberOfRows (CustomAttributeTable.RId);
+ m_rows [CustomAttributeTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (FieldMarshalTable.RId)) {
coll.Add (new FieldMarshalTable ());
- ReadNumberOfRows (FieldMarshalTable.RId);
+ m_rows [FieldMarshalTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (DeclSecurityTable.RId)) {
coll.Add (new DeclSecurityTable ());
- ReadNumberOfRows (DeclSecurityTable.RId);
+ m_rows [DeclSecurityTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (ClassLayoutTable.RId)) {
coll.Add (new ClassLayoutTable ());
- ReadNumberOfRows (ClassLayoutTable.RId);
+ m_rows [ClassLayoutTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (FieldLayoutTable.RId)) {
coll.Add (new FieldLayoutTable ());
- ReadNumberOfRows (FieldLayoutTable.RId);
+ m_rows [FieldLayoutTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (StandAloneSigTable.RId)) {
coll.Add (new StandAloneSigTable ());
- ReadNumberOfRows (StandAloneSigTable.RId);
+ m_rows [StandAloneSigTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (EventMapTable.RId)) {
coll.Add (new EventMapTable ());
- ReadNumberOfRows (EventMapTable.RId);
+ m_rows [EventMapTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (EventTable.RId)) {
coll.Add (new EventTable ());
- ReadNumberOfRows (EventTable.RId);
+ m_rows [EventTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (PropertyMapTable.RId)) {
coll.Add (new PropertyMapTable ());
- ReadNumberOfRows (PropertyMapTable.RId);
+ m_rows [PropertyMapTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (PropertyTable.RId)) {
coll.Add (new PropertyTable ());
- ReadNumberOfRows (PropertyTable.RId);
+ m_rows [PropertyTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (MethodSemanticsTable.RId)) {
coll.Add (new MethodSemanticsTable ());
- ReadNumberOfRows (MethodSemanticsTable.RId);
+ m_rows [MethodSemanticsTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (MethodImplTable.RId)) {
coll.Add (new MethodImplTable ());
- ReadNumberOfRows (MethodImplTable.RId);
+ m_rows [MethodImplTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (ModuleRefTable.RId)) {
coll.Add (new ModuleRefTable ());
- ReadNumberOfRows (ModuleRefTable.RId);
+ m_rows [ModuleRefTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (TypeSpecTable.RId)) {
coll.Add (new TypeSpecTable ());
- ReadNumberOfRows (TypeSpecTable.RId);
+ m_rows [TypeSpecTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (ImplMapTable.RId)) {
coll.Add (new ImplMapTable ());
- ReadNumberOfRows (ImplMapTable.RId);
+ m_rows [ImplMapTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (FieldRVATable.RId)) {
coll.Add (new FieldRVATable ());
- ReadNumberOfRows (FieldRVATable.RId);
+ m_rows [FieldRVATable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (AssemblyTable.RId)) {
coll.Add (new AssemblyTable ());
- ReadNumberOfRows (AssemblyTable.RId);
+ m_rows [AssemblyTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (AssemblyProcessorTable.RId)) {
coll.Add (new AssemblyProcessorTable ());
- ReadNumberOfRows (AssemblyProcessorTable.RId);
+ m_rows [AssemblyProcessorTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (AssemblyOSTable.RId)) {
coll.Add (new AssemblyOSTable ());
- ReadNumberOfRows (AssemblyOSTable.RId);
+ m_rows [AssemblyOSTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (AssemblyRefTable.RId)) {
coll.Add (new AssemblyRefTable ());
- ReadNumberOfRows (AssemblyRefTable.RId);
+ m_rows [AssemblyRefTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (AssemblyRefProcessorTable.RId)) {
coll.Add (new AssemblyRefProcessorTable ());
- ReadNumberOfRows
(AssemblyRefProcessorTable.RId);
+ m_rows [AssemblyRefProcessorTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (AssemblyRefOSTable.RId)) {
coll.Add (new AssemblyRefOSTable ());
- ReadNumberOfRows (AssemblyRefOSTable.RId);
+ m_rows [AssemblyRefOSTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (FileTable.RId)) {
coll.Add (new FileTable ());
- ReadNumberOfRows (FileTable.RId);
+ m_rows [FileTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (ExportedTypeTable.RId)) {
coll.Add (new ExportedTypeTable ());
- ReadNumberOfRows (ExportedTypeTable.RId);
+ m_rows [ExportedTypeTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (ManifestResourceTable.RId)) {
coll.Add (new ManifestResourceTable ());
- ReadNumberOfRows (ManifestResourceTable.RId);
+ m_rows [ManifestResourceTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (NestedClassTable.RId)) {
coll.Add (new NestedClassTable ());
- ReadNumberOfRows (NestedClassTable.RId);
+ m_rows [NestedClassTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (GenericParamTable.RId)) {
coll.Add (new GenericParamTable ());
- ReadNumberOfRows (GenericParamTable.RId);
+ m_rows [GenericParamTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (MethodSpecTable.RId)) {
coll.Add (new MethodSpecTable ());
- ReadNumberOfRows (MethodSpecTable.RId);
+ m_rows [MethodSpecTable.RId] =
m_binaryReader.ReadInt32 ();
}
if (m_heap.HasTable (GenericParamConstraintTable.RId)) {
coll.Add (new GenericParamConstraintTable ());
- ReadNumberOfRows
(GenericParamConstraintTable.RId);
+ m_rows [GenericParamConstraintTable.RId] =
m_binaryReader.ReadInt32 ();
}
}
public override void VisitAssemblyTable (AssemblyTable table)
{
- int number = GetNumberOfRows (AssemblyTable.RId);
+ int number = m_rows [AssemblyTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new AssemblyRow ());
}
public override void VisitAssemblyOSTable (AssemblyOSTable
table)
{
- int number = GetNumberOfRows (AssemblyOSTable.RId);
+ int number = m_rows [AssemblyOSTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new AssemblyOSRow ());
}
public override void VisitAssemblyProcessorTable
(AssemblyProcessorTable table)
{
- int number = GetNumberOfRows
(AssemblyProcessorTable.RId);
+ int number = m_rows [AssemblyProcessorTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new AssemblyProcessorRow ());
}
public override void VisitAssemblyRefTable (AssemblyRefTable
table)
{
- int number = GetNumberOfRows (AssemblyRefTable.RId);
+ int number = m_rows [AssemblyRefTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new AssemblyRefRow ());
}
public override void VisitAssemblyRefOSTable
(AssemblyRefOSTable table)
{
- int number = GetNumberOfRows (AssemblyRefOSTable.RId);
+ int number = m_rows [AssemblyRefOSTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new AssemblyRefOSRow ());
}
public override void VisitAssemblyRefProcessorTable
(AssemblyRefProcessorTable table)
{
- int number = GetNumberOfRows
(AssemblyRefProcessorTable.RId);
+ int number = m_rows [AssemblyRefProcessorTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new AssemblyRefProcessorRow ());
}
public override void VisitClassLayoutTable (ClassLayoutTable
table)
{
- int number = GetNumberOfRows (ClassLayoutTable.RId);
+ int number = m_rows [ClassLayoutTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new ClassLayoutRow ());
}
public override void VisitConstantTable (ConstantTable table)
{
- int number = GetNumberOfRows (ConstantTable.RId);
+ int number = m_rows [ConstantTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new ConstantRow ());
}
public override void VisitCustomAttributeTable
(CustomAttributeTable table)
{
- int number = GetNumberOfRows (CustomAttributeTable.RId);
+ int number = m_rows [CustomAttributeTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new CustomAttributeRow ());
}
public override void VisitDeclSecurityTable (DeclSecurityTable
table)
{
- int number = GetNumberOfRows (DeclSecurityTable.RId);
+ int number = m_rows [DeclSecurityTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new DeclSecurityRow ());
}
public override void VisitEventTable (EventTable table)
{
- int number = GetNumberOfRows (EventTable.RId);
+ int number = m_rows [EventTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new EventRow ());
}
public override void VisitEventMapTable (EventMapTable table)
{
- int number = GetNumberOfRows (EventMapTable.RId);
+ int number = m_rows [EventMapTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new EventMapRow ());
}
public override void VisitExportedTypeTable (ExportedTypeTable
table)
{
- int number = GetNumberOfRows (ExportedTypeTable.RId);
+ int number = m_rows [ExportedTypeTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new ExportedTypeRow ());
}
public override void VisitFieldTable (FieldTable table)
{
- int number = GetNumberOfRows (FieldTable.RId);
+ int number = m_rows [FieldTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new FieldRow ());
}
public override void VisitFieldLayoutTable (FieldLayoutTable
table)
{
- int number = GetNumberOfRows (FieldLayoutTable.RId);
+ int number = m_rows [FieldLayoutTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new FieldLayoutRow ());
}
public override void VisitFieldMarshalTable (FieldMarshalTable
table)
{
- int number = GetNumberOfRows (FieldMarshalTable.RId);
+ int number = m_rows [FieldMarshalTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new FieldMarshalRow ());
}
public override void VisitFieldRVATable (FieldRVATable table)
{
- int number = GetNumberOfRows (FieldRVATable.RId);
+ int number = m_rows [FieldRVATable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new FieldRVARow ());
}
public override void VisitFileTable (FileTable table)
{
- int number = GetNumberOfRows (FileTable.RId);
+ int number = m_rows [FileTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new FileRow ());
}
public override void VisitGenericParamTable (GenericParamTable
table)
{
- int number = GetNumberOfRows (GenericParamTable.RId);
+ int number = m_rows [GenericParamTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new GenericParamRow ());
}
public override void VisitGenericParamConstraintTable
(GenericParamConstraintTable table)
{
- int number = GetNumberOfRows
(GenericParamConstraintTable.RId);
+ int number = m_rows [GenericParamConstraintTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new GenericParamConstraintRow
());
}
public override void VisitImplMapTable (ImplMapTable table)
{
- int number = GetNumberOfRows (ImplMapTable.RId);
+ int number = m_rows [ImplMapTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new ImplMapRow ());
}
public override void VisitInterfaceImplTable
(InterfaceImplTable table)
{
- int number = GetNumberOfRows (InterfaceImplTable.RId);
+ int number = m_rows [InterfaceImplTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new InterfaceImplRow ());
}
public override void VisitManifestResourceTable
(ManifestResourceTable table)
{
- int number = GetNumberOfRows
(ManifestResourceTable.RId);
+ int number = m_rows [ManifestResourceTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new ManifestResourceRow ());
}
public override void VisitMemberRefTable (MemberRefTable table)
{
- int number = GetNumberOfRows (MemberRefTable.RId);
+ int number = m_rows [MemberRefTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new MemberRefRow ());
}
public override void VisitMethodTable (MethodTable table)
{
- int number = GetNumberOfRows (MethodTable.RId);
+ int number = m_rows [MethodTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new MethodRow ());
}
public override void VisitMethodImplTable (MethodImplTable
table)
{
- int number = GetNumberOfRows (MethodImplTable.RId);
+ int number = m_rows [MethodImplTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new MethodImplRow ());
}
public override void VisitMethodSemanticsTable
(MethodSemanticsTable table)
{
- int number = GetNumberOfRows (MethodSemanticsTable.RId);
+ int number = m_rows [MethodSemanticsTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new MethodSemanticsRow ());
}
public override void VisitMethodSpecTable (MethodSpecTable
table)
{
- int number = GetNumberOfRows (MethodSpecTable.RId);
+ int number = m_rows [MethodSpecTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new MethodSpecRow ());
}
public override void VisitModuleTable (ModuleTable table)
{
- int number = GetNumberOfRows (ModuleTable.RId);
+ int number = m_rows [ModuleTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new ModuleRow ());
}
public override void VisitModuleRefTable (ModuleRefTable table)
{
- int number = GetNumberOfRows (ModuleRefTable.RId);
+ int number = m_rows [ModuleRefTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new ModuleRefRow ());
}
public override void VisitNestedClassTable (NestedClassTable
table)
{
- int number = GetNumberOfRows (NestedClassTable.RId);
+ int number = m_rows [NestedClassTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new NestedClassRow ());
}
public override void VisitParamTable (ParamTable table)
{
- int number = GetNumberOfRows (ParamTable.RId);
+ int number = m_rows [ParamTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new ParamRow ());
}
public override void VisitPropertyTable (PropertyTable table)
{
- int number = GetNumberOfRows (PropertyTable.RId);
+ int number = m_rows [PropertyTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new PropertyRow ());
}
public override void VisitPropertyMapTable (PropertyMapTable
table)
{
- int number = GetNumberOfRows (PropertyMapTable.RId);
+ int number = m_rows [PropertyMapTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new PropertyMapRow ());
}
public override void VisitStandAloneSigTable
(StandAloneSigTable table)
{
- int number = GetNumberOfRows (StandAloneSigTable.RId);
+ int number = m_rows [StandAloneSigTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new StandAloneSigRow ());
}
public override void VisitTypeDefTable (TypeDefTable table)
{
- int number = GetNumberOfRows (TypeDefTable.RId);
+ int number = m_rows [TypeDefTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new TypeDefRow ());
}
public override void VisitTypeRefTable (TypeRefTable table)
{
- int number = GetNumberOfRows (TypeRefTable.RId);
+ int number = m_rows [TypeRefTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new TypeRefRow ());
}
public override void VisitTypeSpecTable (TypeSpecTable table)
{
- int number = GetNumberOfRows (TypeSpecTable.RId);
+ int number = m_rows [TypeSpecTable.RId];
table.Rows = new RowCollection (number);
for (int i = 0; i < number; i++)
table.Rows.Add (new TypeSpecRow ());
Modified: trunk/cecil/lib/Mono.Cecil.Metadata/TableCollection.cs
===================================================================
--- trunk/cecil/lib/Mono.Cecil.Metadata/TableCollection.cs 2006-05-18
17:27:50 UTC (rev 60829)
+++ trunk/cecil/lib/Mono.Cecil.Metadata/TableCollection.cs 2006-05-18
17:31:30 UTC (rev 60830)
@@ -33,7 +33,7 @@
public class TableCollection : ICollection, IMetadataTableVisitable
{
- IMetadataTable [] m_tables = new IMetadataTable [45];
+ IMetadataTable [] m_tables = new IMetadataTable
[TablesHeap.MaxTableCount];
TablesHeap m_heap;
Modified: trunk/cecil/lib/Mono.Cecil.Metadata/TablesHeap.cs
===================================================================
--- trunk/cecil/lib/Mono.Cecil.Metadata/TablesHeap.cs 2006-05-18 17:27:50 UTC
(rev 60829)
+++ trunk/cecil/lib/Mono.Cecil.Metadata/TablesHeap.cs 2006-05-18 17:31:30 UTC
(rev 60830)
@@ -43,6 +43,8 @@
TableCollection m_tables;
+ public const int MaxTableCount = 45;
+
public TableCollection Tables {
get { return m_tables; }
set { m_tables = value; }
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches