@@ -152,15 +152,16 @@ internal static PSESSymbols.ScriptExtent GetNameExtent(TypeDefinitionAst typeDef
152
152
/// Gets a new ScriptExtent for a given Ast for the symbol name only (variable)
153
153
/// </summary>
154
154
/// <param name="functionMemberAst">A FunctionMemberAst in the script's AST</param>
155
- /// <param name="includeSignature">A bool indicating if return type and class should be included</param>
155
+ /// <param name="useQualifiedName">A bool indicating if class/enum name should be prepended</param>
156
+ /// <param name="includeReturnType">A bool indicating if return type should be included for methods</param>
156
157
/// <returns>A ScriptExtent with for the symbol name only</returns>
157
- internal static PSESSymbols . ScriptExtent GetNameExtent ( FunctionMemberAst functionMemberAst , bool includeSignature = false )
158
+ internal static PSESSymbols . ScriptExtent GetNameExtent ( FunctionMemberAst functionMemberAst , bool useQualifiedName = true , bool includeReturnType = false )
158
159
{
159
160
( int startColumn , int startLine ) = GetNameStartColumnAndLineFromAst ( functionMemberAst ) ;
160
161
161
162
return new PSESSymbols . ScriptExtent ( )
162
163
{
163
- Text = GetMemberOverloadName ( functionMemberAst , includeSignature ) ,
164
+ Text = GetMemberOverloadName ( functionMemberAst , useQualifiedName , includeReturnType ) ,
164
165
StartLineNumber = startLine ,
165
166
EndLineNumber = startLine ,
166
167
StartColumnNumber = startColumn ,
@@ -173,9 +174,9 @@ internal static PSESSymbols.ScriptExtent GetNameExtent(FunctionMemberAst functio
173
174
/// Gets a new ScriptExtent for a given Ast for the property name only
174
175
/// </summary>
175
176
/// <param name="propertyMemberAst">A PropertyMemberAst in the script's AST</param>
176
- /// <param name="includeSignature ">A bool indicating if property- type and name of class/enum should be included</param>
177
+ /// <param name="includePropertyType ">A bool indicating if type should be included for class property </param>
177
178
/// <returns>A ScriptExtent with for the symbol name only</returns>
178
- internal static PSESSymbols . ScriptExtent GetNameExtent ( PropertyMemberAst propertyMemberAst , bool includeSignature = false )
179
+ internal static PSESSymbols . ScriptExtent GetNameExtent ( PropertyMemberAst propertyMemberAst , bool includePropertyType = false )
179
180
{
180
181
bool isEnumMember = propertyMemberAst . Parent is TypeDefinitionAst typeDef && typeDef . IsEnum ;
181
182
( int startColumn , int startLine ) = GetNameStartColumnAndLineFromAst ( propertyMemberAst , isEnumMember ) ;
@@ -187,7 +188,7 @@ internal static PSESSymbols.ScriptExtent GetNameExtent(PropertyMemberAst propert
187
188
188
189
return new PSESSymbols . ScriptExtent ( )
189
190
{
190
- Text = GetMemberOverloadName ( propertyMemberAst , includeSignature ) ,
191
+ Text = GetMemberOverloadName ( propertyMemberAst , includePropertyType ) ,
191
192
StartLineNumber = startLine ,
192
193
EndLineNumber = startLine ,
193
194
StartColumnNumber = startColumn ,
@@ -221,24 +222,24 @@ internal static PSESSymbols.ScriptExtent GetNameExtent(ConfigurationDefinitionAs
221
222
/// Gets the method or constructor name with parameters for current overload.
222
223
/// </summary>
223
224
/// <param name="functionMemberAst">A FunctionMemberAst object in the script's AST</param>
224
- /// <param name="includeSignature">A bool indicating if return type and class should be included</param>
225
+ /// <param name="useQualifiedName">A bool indicating if class/enum name should be prepended</param>
226
+ /// <param name="includeReturnType">A bool indicating if return type should be included for methods</param>
225
227
/// <returns>Function member name with return type (optional) and parameters</returns>
226
- internal static string GetMemberOverloadName ( FunctionMemberAst functionMemberAst , bool includeSignature = false )
228
+ internal static string GetMemberOverloadName ( FunctionMemberAst functionMemberAst ,
229
+ bool useQualifiedName = true ,
230
+ bool includeReturnType = false )
227
231
{
228
232
StringBuilder sb = new ( ) ;
229
233
230
234
// Prepend return type and class. Used for symbol details (hover)
231
- if ( includeSignature )
235
+ if ( includeReturnType && ! functionMemberAst . IsConstructor )
232
236
{
233
- if ( ! functionMemberAst . IsConstructor )
234
- {
235
- sb . Append ( functionMemberAst . ReturnType ? . TypeName . Name ?? "void" ) . Append ( ' ' ) ;
236
- }
237
+ sb . Append ( functionMemberAst . ReturnType ? . TypeName . Name ?? "void" ) . Append ( ' ' ) ;
238
+ }
237
239
238
- if ( functionMemberAst . Parent is TypeDefinitionAst typeAst && typeAst . IsClass )
239
- {
240
- sb . Append ( typeAst . Name ) . Append ( '.' ) ;
241
- }
240
+ if ( useQualifiedName && functionMemberAst . Parent is TypeDefinitionAst typeAst && typeAst . IsClass )
241
+ {
242
+ sb . Append ( typeAst . Name ) . Append ( '.' ) ;
242
243
}
243
244
244
245
sb . Append ( functionMemberAst . Name ) ;
@@ -264,16 +265,17 @@ internal static string GetMemberOverloadName(FunctionMemberAst functionMemberAst
264
265
/// Gets the property name with type and class/enum.
265
266
/// </summary>
266
267
/// <param name="propertyMemberAst">A PropertyMemberAst object in the script's AST</param>
267
- /// <param name="includeSignature ">A bool indicating if property- type and name of class/enum should be included</param>
268
+ /// <param name="includePropertyType ">A bool indicating if type should be included for class property </param>
268
269
/// <returns>Property name with type (optional) and class/enum</returns>
269
- internal static string GetMemberOverloadName ( PropertyMemberAst propertyMemberAst , bool includeSignature = false )
270
+ internal static string GetMemberOverloadName ( PropertyMemberAst propertyMemberAst ,
271
+ bool includePropertyType = false )
270
272
{
271
273
StringBuilder sb = new ( ) ;
272
274
273
275
// Prepend return type and class. Used for symbol details (hover)
274
- if ( includeSignature && propertyMemberAst . Parent is TypeDefinitionAst typeAst )
276
+ if ( propertyMemberAst . Parent is TypeDefinitionAst typeAst )
275
277
{
276
- if ( ! typeAst . IsEnum )
278
+ if ( includePropertyType && ! typeAst . IsEnum )
277
279
{
278
280
sb . Append ( propertyMemberAst . PropertyType ? . TypeName . Name ?? "object" ) . Append ( ' ' ) ;
279
281
}
0 commit comments