private void OnReduction(Tuple <int, int> startPos, Tuple <int, int> endPos, object newObj) { if (newObj is IPair <IPair <ITypeCheck, IPrint>, IForm> ) { ITypeCheck typeCheckObj = ((IPair <IPair <ITypeCheck, IPrint>, IForm>)newObj).Item1.Item1; typeCheckObj.SourceStartPosition = startPos; typeCheckObj.SourceEndPosition = endPos; } }
private void CheckType(ITypeCheck checker, Type type, List <AssemblyScanResult> result) { try { checker.Check(type, result); } catch (Exception ex) { string message = "检查类型时发生异常:" + type.FullName; throw new AssemblyScanException(message, ex); } }