private void ProcessMethod(MethodDefinition methd, MethodReference rf, string typeName, string methName) { bool isSystem = CodeProperties.IsSystem(rf); bool isExternal = CodeProperties.IsExternalCall(rf); Collectors.OnMethodCall(methd, rf, typeName, methName, isSystem, isExternal); if (isSystem) { Collectors.OnSystemMethodCall(methd, rf, typeName, methName); } }
private ArrayList GetSystemCallSequences(MethodBody body) { ArrayList list = new ArrayList(); string last = ""; foreach (Instruction i in body.Instructions) { if (CodeProperties.IsMethodCall(i)) { MethodReference rf = (MethodReference)i.Operand; if (CodeProperties.IsSystem(rf)) { string full = CodeProperties.GetFullName(rf); if (/*last != full &&*/ !Stop(full)) { list.Add(full); } //last = full; } } } return(list); }