public void registerReferenceProviders()

in src/main/java/lt/martynassateika/idea/codeigniter/config/ConfigReferenceContributor.java [47:69]


  public void registerReferenceProviders(@NotNull PsiReferenceRegistrar psiReferenceRegistrar) {
    psiReferenceRegistrar.registerReferenceProvider(PlatformPatterns.psiElement(),
        new PsiReferenceProvider() {
          @NotNull
          @Override
          public PsiReference[] getReferencesByElement(@NotNull PsiElement psiElement,
              @NotNull ProcessingContext processingContext) {
            Project project = psiElement.getProject();
            
            if (CodeIgniterProjectSettings.getInstance(project).isEnabled()) {
              if (psiElement instanceof StringLiteralExpression) {
                StringLiteralExpression literalExpression = (StringLiteralExpression) psiElement;
                if (CiConfigUtil.isConfigItemNameElement(psiElement)) {
                  List<AssignmentExpression> configValues = CiConfigUtil
                      .findValuesFor(project, literalExpression);
                  return getValueReferences(literalExpression, configValues);
                }
              }
            }
            return PsiReference.EMPTY_ARRAY;
          }
        });
  }