Search in sources :

Example 11 with JavaDummyElement

use of com.intellij.psi.impl.source.JavaDummyElement in project intellij-community by JetBrains.

the class PsiJavaParserFacadeImpl method createParameterFromText.

@NotNull
@Override
public PsiParameter createParameterFromText(@NotNull final String text, @Nullable final PsiElement context) throws IncorrectOperationException {
    final DummyHolder holder = DummyHolderFactory.createHolder(myManager, new JavaDummyElement(text, PARAMETER, level(context)), context);
    final PsiElement element = SourceTreeToPsiMap.treeElementToPsi(holder.getTreeElement().getFirstChildNode());
    if (!(element instanceof PsiParameter)) {
        throw new IncorrectOperationException("Incorrect parameter '" + text + "'");
    }
    return (PsiParameter) element;
}
Also used : JavaDummyElement(com.intellij.psi.impl.source.JavaDummyElement) DummyHolder(com.intellij.psi.impl.source.DummyHolder) IncorrectOperationException(com.intellij.util.IncorrectOperationException) NotNull(org.jetbrains.annotations.NotNull)

Example 12 with JavaDummyElement

use of com.intellij.psi.impl.source.JavaDummyElement in project intellij-community by JetBrains.

the class PsiJavaParserFacadeImpl method createCodeBlockFromText.

@NotNull
@Override
public PsiCodeBlock createCodeBlockFromText(@NotNull final String text, @Nullable final PsiElement context) throws IncorrectOperationException {
    final DummyHolder holder = DummyHolderFactory.createHolder(myManager, new JavaDummyElement(text, CODE_BLOCK, level(context), true), context);
    final PsiElement element = SourceTreeToPsiMap.treeElementToPsi(holder.getTreeElement().getFirstChildNode());
    if (!(element instanceof PsiCodeBlock)) {
        throw new IncorrectOperationException("Incorrect code block '" + text + "'");
    }
    return (PsiCodeBlock) element;
}
Also used : JavaDummyElement(com.intellij.psi.impl.source.JavaDummyElement) DummyHolder(com.intellij.psi.impl.source.DummyHolder) IncorrectOperationException(com.intellij.util.IncorrectOperationException) NotNull(org.jetbrains.annotations.NotNull)

Example 13 with JavaDummyElement

use of com.intellij.psi.impl.source.JavaDummyElement in project intellij-community by JetBrains.

the class PsiJavaParserFacadeImpl method createEnumConstantFromText.

@NotNull
@Override
public PsiEnumConstant createEnumConstantFromText(@NotNull final String text, @Nullable final PsiElement context) throws IncorrectOperationException {
    final DummyHolder holder = DummyHolderFactory.createHolder(myManager, new JavaDummyElement(text, ENUM_CONSTANT, level(context)), context);
    final PsiElement element = SourceTreeToPsiMap.treeElementToPsi(holder.getTreeElement().getFirstChildNode());
    if (!(element instanceof PsiEnumConstant)) {
        throw new IncorrectOperationException("Incorrect enum constant '" + text + "'");
    }
    return (PsiEnumConstant) element;
}
Also used : JavaDummyElement(com.intellij.psi.impl.source.JavaDummyElement) DummyHolder(com.intellij.psi.impl.source.DummyHolder) IncorrectOperationException(com.intellij.util.IncorrectOperationException) NotNull(org.jetbrains.annotations.NotNull)

Example 14 with JavaDummyElement

use of com.intellij.psi.impl.source.JavaDummyElement in project intellij-community by JetBrains.

the class ClsParsingUtil method createMemberValueFromText.

public static PsiAnnotationMemberValue createMemberValueFromText(@NotNull String text, @NotNull PsiManager manager, @NotNull ClsElementImpl parent) {
    LanguageLevel level = PsiUtil.getLanguageLevel(parent);
    DummyHolder holder = DummyHolderFactory.createHolder(manager, new JavaDummyElement(text, ANNOTATION_VALUE, level), null);
    PsiElement element = SourceTreeToPsiMap.treeElementToPsi(holder.getTreeElement().getFirstChildNode());
    if (!(element instanceof PsiAnnotationMemberValue)) {
        LOG.error("Could not parse initializer:'" + text + "'");
        return null;
    }
    return getMemberValue(element, parent);
}
Also used : JavaDummyElement(com.intellij.psi.impl.source.JavaDummyElement) LanguageLevel(com.intellij.pom.java.LanguageLevel) DummyHolder(com.intellij.psi.impl.source.DummyHolder)

Aggregations

DummyHolder (com.intellij.psi.impl.source.DummyHolder)14 JavaDummyElement (com.intellij.psi.impl.source.JavaDummyElement)14 NotNull (org.jetbrains.annotations.NotNull)13 IncorrectOperationException (com.intellij.util.IncorrectOperationException)12 LanguageLevel (com.intellij.pom.java.LanguageLevel)2