示例#1
0
 internal MethodSemanticsRow(
     MethodSemanticsFlags semanticsFlag,
     uint method,
     uint association)
 {
     this.SemanticsFlag = semanticsFlag;
     this.Method        = method;
     this.Association   = association;
 }
 internal MethodSemanticsRow(
   MethodSemanticsFlags semanticsFlag,
   uint method,
   uint association)
 {
     this.SemanticsFlag = semanticsFlag;
     this.Method = method;
     this.Association = association;
 }
 internal IMethodDefinition/*?*/ GetEventAddOrRemoveOrFireMethod(
   EventDefinition eventDefinition,
   MethodSemanticsFlags addOrRemoveOrFireFlag
 ) {
   uint methodSemanticRowIdStart;
   uint methodSemanticRowIdEnd;
   this.GetSemanticInfoForEvent(eventDefinition.EventRowId, out methodSemanticRowIdStart, out methodSemanticRowIdEnd);
   for (uint methSemRowIdIter = methodSemanticRowIdStart; methSemRowIdIter < methodSemanticRowIdEnd; ++methSemRowIdIter) {
     MethodSemanticsRow methodSemanticRow = this.PEFileReader.MethodSemanticsTable[methSemRowIdIter];
     if (methodSemanticRow.SemanticsFlag == addOrRemoveOrFireFlag) {
       return this.GetMethodDefAtRow(methodSemanticRow.Method);
     }
   }
   return null;
 }
 internal IMethodDefinition/*?*/ GetPropertyGetterOrSetterMethod(
   PropertyDefinition propertyDefinition,
   MethodSemanticsFlags getterOrSetterFlag
 ) {
   uint methodSemanticRowIdStart;
   uint methodSemanticRowIdEnd;
   this.GetSemanticInfoForProperty(propertyDefinition.PropertyRowId, out methodSemanticRowIdStart, out methodSemanticRowIdEnd);
   for (uint methSemRowIdIter = methodSemanticRowIdStart; methSemRowIdIter < methodSemanticRowIdEnd; ++methSemRowIdIter) {
     MethodSemanticsRow methodSemanticRow = this.PEFileReader.MethodSemanticsTable[methSemRowIdIter];
     if (methodSemanticRow.SemanticsFlag == getterOrSetterFlag) {
       return this.GetMethodDefAtRow(methodSemanticRow.Method);
     }
   }
   return null;
 }