/// <summary> /// Executes <see cref="styleCopCore"/> within the <see cref="OnViolationEncountered"/>. /// </summary> /// <remarks> /// Violations are raised as events, handled by <see cref="IProjectFile"/>. /// </remarks> /// <param name="projectFile"> /// <see cref="StyleCopStageProcess"/>representing the file currently being parsed by ReSharper. /// </param> /// <param name="document"> /// The document being checked. /// </param> /// <param name="file"> /// The file to analyze. /// </param> public void Execute(IProjectFile projectFile, IDocument document, ICSharpFile file) { StyleCopTrace.In(projectFile, document); if (projectFile == null) { return; } this.violationHighlights.Clear(); if (!this.styleCopSettings.SkipAnalysisForDocument(projectFile)) { FileHeader fileHeader = new FileHeader(file); if (!fileHeader.UnStyled) { this.file = projectFile; this.document = document; this.RunStyleCop(document); } } StyleCopTrace.Out(); }