From 635f5745e62de2dfeefcd54cfbad07b772173b07 Mon Sep 17 00:00:00 2001 From: Rekkonnect Date: Tue, 6 Aug 2024 13:53:03 +0300 Subject: [PATCH] Enable focusing on typed constant on caret hover --- .../Core/DisplayAnalysis/SyntaxObjectInfo.cs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Syndiesis/Core/DisplayAnalysis/SyntaxObjectInfo.cs b/Syndiesis/Core/DisplayAnalysis/SyntaxObjectInfo.cs index 2725524..7e186fa 100644 --- a/Syndiesis/Core/DisplayAnalysis/SyntaxObjectInfo.cs +++ b/Syndiesis/Core/DisplayAnalysis/SyntaxObjectInfo.cs @@ -113,6 +113,12 @@ private static LinePositionSpan LineSpanOrDefault(SyntaxTree? tree, TextSpan spa case AttributeData attribute: return attribute.GetAttributeApplicationSyntax()?.SyntaxTree; + case AttributeDataViewModel attributeModel: + return GetSyntaxTree(attributeModel.NamedArguments); + + case AttributeDataViewModel.LinkedAttributeArgument attributeArgument: + return GetSyntaxTree(attributeArgument.ArgumentSyntax); + // Operation case IOperation operation: return operation.Syntax.SyntaxTree; @@ -178,6 +184,12 @@ private static TextSpan GetSpan(object x) return attribute.ApplicationSyntaxReference ?.Span ?? InvalidTextSpan; + case AttributeDataViewModel attributeModel: + return GetSpan(attributeModel.NamedArguments); + + case AttributeDataViewModel.LinkedAttributeArgument attributeArgument: + return GetSpan(attributeArgument.ArgumentSyntax); + // Operation case IOperation operation: return operation.Syntax.Span; @@ -244,6 +256,12 @@ private static TextSpan GetFullSpan(object x) return attribute.GetAttributeApplicationSyntax() ?.FullSpan ?? InvalidTextSpan; + case AttributeDataViewModel attributeModel: + return GetFullSpan(attributeModel.NamedArguments); + + case AttributeDataViewModel.LinkedAttributeArgument attributeArgument: + return GetFullSpan(attributeArgument.ArgumentSyntax); + // Operation case IOperation operation: return operation.Syntax.FullSpan;