public static PsiElement createFromText()

in src/main/java/ru/adelf/idea/dotenv/DotEnvFactory.java [14:33]


    public static PsiElement createFromText(@NotNull Project project, @NotNull IElementType type, @NotNull String text) {
        final Ref<PsiElement> ret = new Ref<>();
        PsiFile dummyFile = createDummyFile(project, text);
        dummyFile.accept(new PsiRecursiveElementWalkingVisitor() {
            @Override
            public void visitElement(@NotNull PsiElement element) {
                ASTNode node = element.getNode();
                if (node != null && node.getElementType() == type) {
                    ret.set(element);
                    stopWalking();
                } else {
                    super.visitElement(element);
                }
            }
        });

        assert !ret.isNull() : "cannot create element from text:\n" + dummyFile.getText();

        return ret.get();
    }