internal void ReadMethodImpls(ClassDef theClass, uint classIx) { SetElementPosition(MDTable.InterfaceImpl,0); for (int i=0; (i < tableLengths[(int)MDTable.MethodImpl]); i++) { uint clIx = GetIndex(MDTable.TypeDef); uint bodIx = GetCodedIndex(CIx.MethodDefOrRef); uint declIx = GetCodedIndex(CIx.MethodDefOrRef); if (clIx == classIx) { MethodImpl mImpl = new MethodImpl(this,theClass,bodIx,declIx); theClass.AddMethodImpl(mImpl); tables[(int)MDTable.MethodImpl][i] = mImpl; } } }
internal override void Resolve(PEReader buff) { body = (Method)buff.GetCodedElement(CIx.MethodDefOrRef,methBodyIx); header = (Method)buff.GetCodedElement(CIx.MethodDefOrRef,methDeclIx); parent = (ClassDef)buff.GetElement(MDTable.TypeDef,classIx); parent.AddMethodImpl(this); resolved = true; }