Search in sources :

Example 6 with ValueTypeNameNode

use of org.ballerinalang.plugins.idea.psi.ValueTypeNameNode in project ballerina by ballerina-lang.

the class BallerinaAnnotator method annotateConstants.

private void annotateConstants(@NotNull PsiElement element, @NotNull AnnotationHolder holder) {
    ValueTypeNameNode valueTypeNameNode = PsiTreeUtil.findChildOfType(element, ValueTypeNameNode.class);
    if (valueTypeNameNode == null || valueTypeNameNode.getText().isEmpty()) {
        return;
    }
    PsiElement nameIdentifier = ((ConstantDefinitionNode) element).getNameIdentifier();
    if (nameIdentifier == null) {
        return;
    }
    Annotation annotation = holder.createInfoAnnotation(nameIdentifier, null);
    annotation.setTextAttributes(BallerinaSyntaxHighlightingColors.CONSTANT);
}
Also used : ConstantDefinitionNode(org.ballerinalang.plugins.idea.psi.ConstantDefinitionNode) ValueTypeNameNode(org.ballerinalang.plugins.idea.psi.ValueTypeNameNode) PsiElement(com.intellij.psi.PsiElement) LeafPsiElement(com.intellij.psi.impl.source.tree.LeafPsiElement) Annotation(com.intellij.lang.annotation.Annotation)

Aggregations

ValueTypeNameNode (org.ballerinalang.plugins.idea.psi.ValueTypeNameNode)6 PsiElement (com.intellij.psi.PsiElement)5 LeafPsiElement (com.intellij.psi.impl.source.tree.LeafPsiElement)4 BuiltInReferenceTypeNameNode (org.ballerinalang.plugins.idea.psi.BuiltInReferenceTypeNameNode)3 GlobalVariableDefinitionNode (org.ballerinalang.plugins.idea.psi.GlobalVariableDefinitionNode)3 TypeNameNode (org.ballerinalang.plugins.idea.psi.TypeNameNode)3 Annotation (com.intellij.lang.annotation.Annotation)2 PsiReference (com.intellij.psi.PsiReference)2 AnonStructTypeNameNode (org.ballerinalang.plugins.idea.psi.AnonStructTypeNameNode)2 AssignmentStatementNode (org.ballerinalang.plugins.idea.psi.AssignmentStatementNode)2 CodeBlockParameterNode (org.ballerinalang.plugins.idea.psi.CodeBlockParameterNode)2 ConstantDefinitionNode (org.ballerinalang.plugins.idea.psi.ConstantDefinitionNode)2 FieldDefinitionNode (org.ballerinalang.plugins.idea.psi.FieldDefinitionNode)2 FunctionDefinitionNode (org.ballerinalang.plugins.idea.psi.FunctionDefinitionNode)2 FunctionTypeNameNode (org.ballerinalang.plugins.idea.psi.FunctionTypeNameNode)2 NameReferenceNode (org.ballerinalang.plugins.idea.psi.NameReferenceNode)2 ParameterNode (org.ballerinalang.plugins.idea.psi.ParameterNode)2 ReturnParameterNode (org.ballerinalang.plugins.idea.psi.ReturnParameterNode)2 VariableDefinitionNode (org.ballerinalang.plugins.idea.psi.VariableDefinitionNode)2 Nullable (org.jetbrains.annotations.Nullable)2