private static IDeclaredElement FindDeclaredElement(IPsiView psiView, out IJavaScriptLiteralExpression literalExpressionUnderCaret) { literalExpressionUnderCaret = null; var expression = psiView.GetSelectedTreeNode <IJavaScriptLiteralExpression>(); if (expression.IsNameStringLiteralValue()) { literalExpressionUnderCaret = expression; // TODO: Not sure I like creating a new DeclaredElement here return(new AsmDefNameDeclaredElement(expression.GetJavaScriptServices(), expression.GetUnquotedText(), expression.GetSourceFile(), expression.GetTreeStartOffset().Offset)); } if (expression.IsReferencesStringLiteralValue()) { var reference = expression.FindReference <AsmDefNameReference>(); if (reference != null) { return(reference.Resolve().DeclaredElement); } } return(null); }
private static void HighlightFoundDeclaration(IJavaScriptLiteralExpression literalExpression, HighlightingsConsumer consumer) { var range = literalExpression.GetUnquotedDocumentRange(); if (range.IsValid()) { consumer.ConsumeHighlighting(HIGHLIGHTING_ID, range); } }
private static IPathReference GetFolderPathReference(IJavaScriptLiteralExpression literal, IQualifier qualifier, IJavaScriptLiteralExpression token, TreeTextRange range) { return new AngularJsFolderLateBoundReference<IJavaScriptLiteralExpression, IJavaScriptLiteralExpression>(literal, qualifier, token, range); }
public AsmDefRenameFileToMatchAssemblyNameQuickFix(MismatchedAsmDefFilenameWarning warning) { myLiteral = warning.LiteralExpression; }
private AsmDefUsagesContextHighlighter(IDeclaredElement declaredElement, [CanBeNull] IJavaScriptLiteralExpression literalExpressionUnderCaret) { myDeclaredElement = declaredElement; myLiteralExpressionUnderCaret = literalExpressionUnderCaret; }
public AsmDefRemoveInvalidArrayItemQuickFix(ReferencingSelfError error) { myLiteral = error.Reference.GetTreeNode() as IJavaScriptLiteralExpression; }
public AsmDefRemoveInvalidArrayItemQuickFix(JsonValidationFailedWarning warning) { myLiteral = warning.Brace as IJavaScriptLiteralExpression; myIsValid = warning.AssertionResult.Description == AsmDefDuplicateItemsProblemAnalyzer.AsmDefDuplicateItemDescription; }
private static IPathReference GetFolderPathReference(IJavaScriptLiteralExpression literal, IQualifier qualifier, IJavaScriptLiteralExpression token, TreeTextRange range) { return(new AngularJsFolderLateBoundReference <IJavaScriptLiteralExpression, IJavaScriptLiteralExpression>(literal, qualifier, token, range)); }