// // IMetadataVisitor.cs // // Author: // Jb Evain (jbevain@gmail.com) // // Generated by /CodeGen/cecil-gen.rb do not edit // Thu Feb 22 14:39:38 CET 2007 // // (C) 2005 Jb Evain // // Permission is hereby granted, free of charge, to any person obtaining // a copy of this software and associated documentation files (the // "Software"), to deal in the Software without restriction, including // without limitation the rights to use, copy, modify, merge, publish, // distribute, sublicense, and/or sell copies of the Software, and to // permit persons to whom the Software is furnished to do so, subject to // the following conditions: // // The above copyright notice and this permission notice shall be // included in all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // namespace Mono.Cecil.Metadata { public interface IMetadataVisitor { void VisitMetadataRoot (MetadataRoot root); void VisitMetadataRootHeader (MetadataRoot.MetadataRootHeader header); void VisitMetadataStreamCollection (MetadataStreamCollection streams); void VisitMetadataStream (MetadataStream stream); void VisitMetadataStreamHeader (MetadataStream.MetadataStreamHeader header); void VisitGuidHeap (GuidHeap heap); void VisitStringsHeap (StringsHeap heap); void VisitTablesHeap (TablesHeap heap); void VisitBlobHeap (BlobHeap heap); void VisitUserStringsHeap (UserStringsHeap heap); void TerminateMetadataRoot (MetadataRoot root); } public interface IMetadataTableVisitor { void VisitTableCollection (TableCollection coll); void VisitAssemblyTable (AssemblyTable table); void VisitAssemblyOSTable (AssemblyOSTable table); void VisitAssemblyProcessorTable (AssemblyProcessorTable table); void VisitAssemblyRefTable (AssemblyRefTable table); void VisitAssemblyRefOSTable (AssemblyRefOSTable table); void VisitAssemblyRefProcessorTable (AssemblyRefProcessorTable table); void VisitClassLayoutTable (ClassLayoutTable table); void VisitConstantTable (ConstantTable table); void VisitCustomAttributeTable (CustomAttributeTable table); void VisitDeclSecurityTable (DeclSecurityTable table); void VisitEventTable (EventTable table); void VisitEventMapTable (EventMapTable table); void VisitEventPtrTable (EventPtrTable table); void VisitExportedTypeTable (ExportedTypeTable table); void VisitFieldTable (FieldTable table); void VisitFieldLayoutTable (FieldLayoutTable table); void VisitFieldMarshalTable (FieldMarshalTable table); void VisitFieldPtrTable (FieldPtrTable table); void VisitFieldRVATable (FieldRVATable table); void VisitFileTable (FileTable table); void VisitGenericParamTable (GenericParamTable table); void VisitGenericParamConstraintTable (GenericParamConstraintTable table); void VisitImplMapTable (ImplMapTable table); void VisitInterfaceImplTable (InterfaceImplTable table); void VisitManifestResourceTable (ManifestResourceTable table); void VisitMemberRefTable (MemberRefTable table); void VisitMethodTable (MethodTable table); void VisitMethodImplTable (MethodImplTable table); void VisitMethodPtrTable (MethodPtrTable table); void VisitMethodSemanticsTable (MethodSemanticsTable table); void VisitMethodSpecTable (MethodSpecTable table); void VisitModuleTable (ModuleTable table); void VisitModuleRefTable (ModuleRefTable table); void VisitNestedClassTable (NestedClassTable table); void VisitParamTable (ParamTable table); void VisitParamPtrTable (ParamPtrTable table); void VisitPropertyTable (PropertyTable table); void VisitPropertyMapTable (PropertyMapTable table); void VisitPropertyPtrTable (PropertyPtrTable table); void VisitStandAloneSigTable (StandAloneSigTable table); void VisitTypeDefTable (TypeDefTable table); void VisitTypeRefTable (TypeRefTable table); void VisitTypeSpecTable (TypeSpecTable table); void TerminateTableCollection (TableCollection coll); IMetadataRowVisitor GetRowVisitor(); } public interface IMetadataRowVisitor { void VisitRowCollection (RowCollection coll); void VisitAssemblyRow (AssemblyRow row); void VisitAssemblyOSRow (AssemblyOSRow row); void VisitAssemblyProcessorRow (AssemblyProcessorRow row); void VisitAssemblyRefRow (AssemblyRefRow row); void VisitAssemblyRefOSRow (AssemblyRefOSRow row); void VisitAssemblyRefProcessorRow (AssemblyRefProcessorRow row); void VisitClassLayoutRow (ClassLayoutRow row); void VisitConstantRow (ConstantRow row); void VisitCustomAttributeRow (CustomAttributeRow row); void VisitDeclSecurityRow (DeclSecurityRow row); void VisitEventRow (EventRow row); void VisitEventMapRow (EventMapRow row); void VisitEventPtrRow (EventPtrRow row); void VisitExportedTypeRow (ExportedTypeRow row); void VisitFieldRow (FieldRow row); void VisitFieldLayoutRow (FieldLayoutRow row); void VisitFieldMarshalRow (FieldMarshalRow row); void VisitFieldPtrRow (FieldPtrRow row); void VisitFieldRVARow (FieldRVARow row); void VisitFileRow (FileRow row); void VisitGenericParamRow (GenericParamRow row); void VisitGenericParamConstraintRow (GenericParamConstraintRow row); void VisitImplMapRow (ImplMapRow row); void VisitInterfaceImplRow (InterfaceImplRow row); void VisitManifestResourceRow (ManifestResourceRow row); void VisitMemberRefRow (MemberRefRow row); void VisitMethodRow (MethodRow row); void VisitMethodImplRow (MethodImplRow row); void VisitMethodPtrRow (MethodPtrRow row); void VisitMethodSemanticsRow (MethodSemanticsRow row); void VisitMethodSpecRow (MethodSpecRow row); void VisitModuleRow (ModuleRow row); void VisitModuleRefRow (ModuleRefRow row); void VisitNestedClassRow (NestedClassRow row); void VisitParamRow (ParamRow row); void VisitParamPtrRow (ParamPtrRow row); void VisitPropertyRow (PropertyRow row); void VisitPropertyMapRow (PropertyMapRow row); void VisitPropertyPtrRow (PropertyPtrRow row); void VisitStandAloneSigRow (StandAloneSigRow row); void VisitTypeDefRow (TypeDefRow row); void VisitTypeRefRow (TypeRefRow row); void VisitTypeSpecRow (TypeSpecRow row); void TerminateRowCollection (RowCollection coll); } }