Skip to content

Commit d353b40

Browse files
committed
2 parents b8a7eab + 4fefe73 commit d353b40

File tree

197 files changed

+1968
-1373
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

197 files changed

+1968
-1373
lines changed
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
using System;
2+
3+
namespace Rubberduck.Common
4+
{
5+
/// <summary>
6+
/// Mark a feature as undocumented.
7+
/// </summary>
8+
/// <remarks>The RubberduckWeb project may this attribute to filter viewable content.</remarks>
9+
[AttributeUsage(AttributeTargets.Class)]
10+
public class UndocumentedAttribute : Attribute
11+
{
12+
}
13+
}

RetailCoder.VBE/Inspections/IInspection.cs renamed to RetailCoder.VBE/Inspections/Abstract/IInspection.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
using System.Collections.Generic;
33
using Rubberduck.Root;
44

5-
namespace Rubberduck.Inspections
5+
namespace Rubberduck.Inspections.Abstract
66
{
77
/// <summary>
88
/// An interface that abstracts a runnable code inspection.

RetailCoder.VBE/Inspections/IInspectionModel.cs renamed to RetailCoder.VBE/Inspections/Abstract/IInspectionModel.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
namespace Rubberduck.Inspections
1+
using Rubberduck.Inspections.Resources;
2+
3+
namespace Rubberduck.Inspections.Abstract
24
{
35
/// <summary>
46
/// An interface that abstracts the data structure for a code inspection
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using Rubberduck.VBEditor;
4+
5+
namespace Rubberduck.Inspections.Abstract
6+
{
7+
public interface IInspectionResult : IComparable<IInspectionResult>, IComparable
8+
{
9+
IEnumerable<QuickFixBase> QuickFixes { get; }
10+
string Description { get; }
11+
QualifiedSelection QualifiedSelection { get; }
12+
IInspection Inspection { get; }
13+
object[] ToArray();
14+
}
15+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Threading;
4+
using System.Threading.Tasks;
5+
using Rubberduck.Parsing.VBA;
6+
7+
namespace Rubberduck.Inspections.Abstract
8+
{
9+
public interface IInspector : IDisposable
10+
{
11+
Task<IEnumerable<IInspectionResult>> FindIssuesAsync(RubberduckParserState state, CancellationToken token);
12+
}
13+
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
using System.Collections.Generic;
2+
using Antlr4.Runtime;
3+
using Rubberduck.Parsing;
4+
5+
namespace Rubberduck.Inspections.Abstract
6+
{
7+
public interface IParseTreeInspection : IInspection
8+
{
9+
/// <summary>
10+
/// Parse tree inspections have their results property-injected.
11+
/// </summary>
12+
void SetResults(IEnumerable<QualifiedContext> results);
13+
}
14+
15+
/// <summary>
16+
///
17+
/// </summary>
18+
/// <typeparam name="TContext"></typeparam>
19+
public interface IParseTreeInspection<TContext> : IParseTreeInspection where TContext : ParserRuleContext
20+
{
21+
IEnumerable<QualifiedContext<TContext>> ParseTreeResults { get; }
22+
}
23+
}

RetailCoder.VBE/Inspections/InspectionBase.cs renamed to RetailCoder.VBE/Inspections/Abstract/InspectionBase.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
using System;
22
using System.Collections.Generic;
33
using System.Linq;
4+
using Rubberduck.Inspections.Resources;
45
using Rubberduck.Parsing.Annotations;
56
using Rubberduck.Parsing.Symbols;
67
using Rubberduck.Parsing.VBA;
78
using Rubberduck.VBEditor.SafeComWrappers.Abstract;
89

9-
namespace Rubberduck.Inspections
10+
namespace Rubberduck.Inspections.Abstract
1011
{
1112
public abstract class InspectionBase : IInspection
1213
{

RetailCoder.VBE/Inspections/InspectionResultBase.cs renamed to RetailCoder.VBE/Inspections/Abstract/InspectionResultBase.cs

Lines changed: 7 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
11
using System.Collections.Generic;
22
using System.Linq;
33
using Antlr4.Runtime;
4+
using Rubberduck.Inspections.Resources;
45
using Rubberduck.Parsing;
56
using Rubberduck.Parsing.Symbols;
67
using Rubberduck.UI;
78
using Rubberduck.UI.Controls;
89
using Rubberduck.VBEditor;
910

10-
namespace Rubberduck.Inspections
11+
namespace Rubberduck.Inspections.Abstract
1112
{
12-
public abstract class InspectionResultBase : ICodeInspectionResult, INavigateSource
13+
public abstract class InspectionResultBase : IInspectionResult, INavigateSource
1314
{
1415
protected InspectionResultBase(IInspection inspection, Declaration target)
1516
: this(inspection, target.QualifiedName.QualifiedModuleName, target.Context)
@@ -84,13 +85,13 @@ public QualifiedSelection QualifiedSelection
8485
/// <summary>
8586
/// Gets all available "quick fixes" for a code inspection result.
8687
/// </summary>
87-
public virtual IEnumerable<CodeInspectionQuickFix> QuickFixes { get { return new CodeInspectionQuickFix[] {}; } }
88+
public virtual IEnumerable<QuickFixBase> QuickFixes { get { return new QuickFixBase[] {}; } }
8889

8990
public bool HasQuickFixes { get { return QuickFixes.Any(); } }
9091

91-
public virtual CodeInspectionQuickFix DefaultQuickFix { get { return QuickFixes.FirstOrDefault(); } }
92+
public virtual QuickFixBase DefaultQuickFix { get { return QuickFixes.FirstOrDefault(); } }
9293

93-
public int CompareTo(ICodeInspectionResult other)
94+
public int CompareTo(IInspectionResult other)
9495
{
9596
return Inspection.CompareTo(other.Inspection);
9697
}
@@ -115,25 +116,13 @@ public virtual NavigateCodeEventArgs GetNavigationArgs()
115116

116117
public int CompareTo(object obj)
117118
{
118-
return CompareTo(obj as ICodeInspectionResult);
119+
return CompareTo(obj as IInspectionResult);
119120
}
120121

121122
public object[] ToArray()
122123
{
123124
var module = QualifiedSelection.QualifiedName;
124125
return new object[] { Inspection.Severity.ToString(), module.ProjectName, module.ComponentName, Description, QualifiedSelection.Selection.StartLine, QualifiedSelection.Selection.StartColumn };
125126
}
126-
127-
public string ToCsvString()
128-
{
129-
var module = QualifiedSelection.QualifiedName;
130-
return string.Format(
131-
"\"{0}\",\"{1}\",\"{2}\",\"{3}\",{4}",
132-
Inspection.Severity,
133-
Description,
134-
module.ProjectId,
135-
module.ComponentName,
136-
QualifiedSelection.Selection.StartLine);
137-
}
138127
}
139128
}

RetailCoder.VBE/Inspections/CodeInspectionQuickFix.cs renamed to RetailCoder.VBE/Inspections/Abstract/QuickFixBase.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22
using Antlr4.Runtime;
33
using Rubberduck.VBEditor;
44

5-
namespace Rubberduck.Inspections
5+
namespace Rubberduck.Inspections.Abstract
66
{
7-
public abstract class CodeInspectionQuickFix
7+
public abstract class QuickFixBase
88
{
99
private readonly ParserRuleContext _context;
1010
private readonly QualifiedSelection _selection;
1111
private readonly string _description;
1212

13-
public CodeInspectionQuickFix(ParserRuleContext context, QualifiedSelection selection, string description)
13+
public QuickFixBase(ParserRuleContext context, QualifiedSelection selection, string description)
1414
{
1515
Dispatcher.CurrentDispatcher.Thread.CurrentCulture = UI.Settings.Settings.Culture;
1616
Dispatcher.CurrentDispatcher.Thread.CurrentUICulture = UI.Settings.Settings.Culture;

RetailCoder.VBE/Inspections/AssignedByValParameterInspection.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
using System.Collections.Generic;
22
using System.Linq;
3+
using Rubberduck.Inspections.Abstract;
4+
using Rubberduck.Inspections.Resources;
5+
using Rubberduck.Inspections.Results;
36
using Rubberduck.Parsing.Grammar;
47
using Rubberduck.Parsing.Symbols;
58
using Rubberduck.Parsing.VBA;

0 commit comments

Comments
 (0)