Skip to content

Commit 951550e

Browse files
committed
Add doc comments to extension methods.
1 parent 11c836c commit 951550e

File tree

6 files changed

+39
-7
lines changed

6 files changed

+39
-7
lines changed

RetailCoder.VBE/Common/DeclarationExtensions.cs

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,12 @@ public static BitmapImage BitmapImage(this Declaration declaration)
2121
return Cache[declaration];
2222
}
2323

24+
/// <summary>
25+
/// Returns the Selection of a VariableStmtContext.
26+
/// </summary>
27+
/// <exception cref="ArgumentException">Throws when target's DeclarationType is not Variable.</exception>
28+
/// <param name="target"></param>
29+
/// <returns></returns>
2430
public static Selection GetVariableStmtContextSelection(this Declaration target)
2531
{
2632
if (target.DeclarationType != DeclarationType.Variable)
@@ -34,6 +40,12 @@ public static Selection GetVariableStmtContextSelection(this Declaration target)
3440
statement.Stop.Line, statement.Stop.Column);
3541
}
3642

43+
/// <summary>
44+
/// Returns a VariableStmtContext.
45+
/// </summary>
46+
/// <exception cref="ArgumentException">Throws when target's DeclarationType is not Variable.</exception>
47+
/// <param name="target"></param>
48+
/// <returns></returns>
3749
public static VBAParser.VariableStmtContext GetVariableStmtContext(this Declaration target)
3850
{
3951
if (target.DeclarationType != DeclarationType.Variable)
@@ -50,6 +62,12 @@ public static VBAParser.VariableStmtContext GetVariableStmtContext(this Declarat
5062
return statement;
5163
}
5264

65+
/// <summary>
66+
/// Returns whether a variable declaration statement contains multiple declarations in a single statement.
67+
/// </summary>
68+
/// <exception cref="ArgumentException">Throws when target's DeclarationType is not Variable.</exception>
69+
/// <param name="target"></param>
70+
/// <returns></returns>
5371
public static bool HasMultipleDeclarationsInStatement(this Declaration target)
5472
{
5573
if (target.DeclarationType != DeclarationType.Variable)
@@ -312,7 +330,15 @@ public static Declaration FindInterfaceMember(this IEnumerable<Declaration> decl
312330
: matches.First();
313331
}
314332

315-
public static Declaration FindSelection(this IEnumerable<Declaration> declarations, QualifiedSelection selection, DeclarationType[] validDeclarationTypes)
333+
/// <summary>
334+
/// Returns the declaration contained in a qualified selection.
335+
/// To get the selection of a variable or field, use FindVariable(QualifiedSelection)
336+
/// </summary>
337+
/// <param name="declarations"></param>
338+
/// <param name="selection"></param>
339+
/// <param name="validDeclarationTypes"></param>
340+
/// <returns></returns>
341+
public static Declaration FindTarget(this IEnumerable<Declaration> declarations, QualifiedSelection selection, DeclarationType[] validDeclarationTypes)
316342
{
317343
var items = declarations.ToList();
318344

@@ -375,6 +401,12 @@ public static Declaration FindSelection(this IEnumerable<Declaration> declaratio
375401
return target;
376402
}
377403

404+
/// <summary>
405+
/// Returns the variable which contains the passed-in QualifiedSelection. Returns null if the selection is not on a variable.
406+
/// </summary>
407+
/// <param name="declarations"></param>
408+
/// <param name="selection"></param>
409+
/// <returns></returns>
378410
public static Declaration FindVariable(this IEnumerable<Declaration> declarations, QualifiedSelection selection)
379411
{
380412
var items = declarations.Where(d => !d.IsBuiltIn && d.DeclarationType == DeclarationType.Variable).ToList();

RetailCoder.VBE/Navigation/RegexSearchReplace/RegexSearchReplace.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ private List<RegexSearchResult> SearchCurrentBlock(string searchPattern)
132132

133133
var wrapper = _codePaneFactory.Create(_vbe.ActiveCodePane);
134134
var qualifiedSelection = new QualifiedSelection(new QualifiedModuleName(wrapper.CodeModule.Parent), wrapper.Selection);
135-
dynamic block = parseResult.AllDeclarations.FindSelection(qualifiedSelection, declarationTypes).Context.Parent;
135+
dynamic block = parseResult.AllDeclarations.FindTarget(qualifiedSelection, declarationTypes).Context.Parent;
136136
var selection = new Selection(block.Start.Line, block.Start.Column, block.Stop.Line, block.Stop.Column);
137137
return results.Where(r => selection.Contains(r.Selection)).ToList();
138138
}

RetailCoder.VBE/Refactorings/IntroduceParameter/IntroduceParameterRefactoring.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ private void PromoteVariable(Declaration target)
8181

8282
private bool PromptIfMethodImplementsInterface(Declaration targetVariable)
8383
{
84-
var functionDeclaration = _declarations.FindSelection(targetVariable.QualifiedSelection, ValidDeclarationTypes);
84+
var functionDeclaration = _declarations.FindTarget(targetVariable.QualifiedSelection, ValidDeclarationTypes);
8585
var interfaceImplementation = GetInterfaceImplementation(functionDeclaration);
8686

8787
if (interfaceImplementation == null)
@@ -100,7 +100,7 @@ private bool PromptIfMethodImplementsInterface(Declaration targetVariable)
100100

101101
private void UpdateSignature(Declaration targetVariable)
102102
{
103-
var functionDeclaration = _declarations.FindSelection(targetVariable.QualifiedSelection, ValidDeclarationTypes);
103+
var functionDeclaration = _declarations.FindTarget(targetVariable.QualifiedSelection, ValidDeclarationTypes);
104104

105105
var proc = (dynamic)functionDeclaration.Context;
106106
var paramList = (VBAParser.ArgListContext)proc.argList();

RetailCoder.VBE/Refactorings/RemoveParameters/RemoveParametersModel.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public RemoveParametersModel(RubberduckParserState parseResult, QualifiedSelecti
3636

3737
private void AcquireTarget(QualifiedSelection selection)
3838
{
39-
TargetDeclaration = Declarations.FindSelection(selection, ValidDeclarationTypes);
39+
TargetDeclaration = Declarations.FindTarget(selection, ValidDeclarationTypes);
4040
TargetDeclaration = PromptIfTargetImplementsInterface();
4141
TargetDeclaration = GetGetter();
4242
}

RetailCoder.VBE/Refactorings/RemoveParameters/RemoveParametersRefactoring.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public void Refactor(Declaration target)
6262
public void QuickFix(RubberduckParserState parseResult, QualifiedSelection selection)
6363
{
6464
_model = new RemoveParametersModel(parseResult, selection, new MessageBox());
65-
var target = _model.Declarations.FindSelection(selection, new[] { DeclarationType.Parameter });
65+
var target = _model.Declarations.FindTarget(selection, new[] { DeclarationType.Parameter });
6666

6767
// ReSharper disable once PossibleUnintendedReferenceComparison
6868
_model.Parameters.Find(param => param.Declaration == target).IsRemoved = true;

RetailCoder.VBE/Refactorings/ReorderParameters/ReorderParametersModel.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public ReorderParametersModel(RubberduckParserState parseResult, QualifiedSelect
3737

3838
private void AcquireTarget(QualifiedSelection selection)
3939
{
40-
TargetDeclaration = Declarations.FindSelection(selection, ValidDeclarationTypes);
40+
TargetDeclaration = Declarations.FindTarget(selection, ValidDeclarationTypes);
4141
TargetDeclaration = PromptIfTargetImplementsInterface();
4242
TargetDeclaration = GetGetter();
4343
}

0 commit comments

Comments
 (0)