Search in sources :

Example 1 with XPathToken

use of org.intellij.lang.xpath.psi.XPathToken in project intellij-community by JetBrains.

the class ConvertToEntityFix method invoke.

public void invoke(@NotNull Project project, Editor editor, PsiFile file) throws IncorrectOperationException {
    final XmlAttribute attribute = PsiTreeUtil.getContextOfType(myToken.getContainingFile(), XmlAttribute.class, true);
    assert attribute != null;
    final ParserDefinition parserDefinition = LanguageParserDefinitions.INSTANCE.forLanguage(myToken.getLanguage());
    assert parserDefinition != null;
    final PsiFile f = XPathChangeUtil.createXPathFile(myToken, "1 " + myValue + " 2");
    final PsiElement firstChild = f.getFirstChild();
    assert firstChild != null;
    //
    final XPathToken child = PsiTreeUtil.getChildOfType(firstChild, XPathToken.class);
    assert child != null;
    myToken.replace(child);
}
Also used : XmlAttribute(com.intellij.psi.xml.XmlAttribute) ParserDefinition(com.intellij.lang.ParserDefinition) PsiFile(com.intellij.psi.PsiFile) PsiElement(com.intellij.psi.PsiElement) XPathToken(org.intellij.lang.xpath.psi.XPathToken)

Aggregations

ParserDefinition (com.intellij.lang.ParserDefinition)1 PsiElement (com.intellij.psi.PsiElement)1 PsiFile (com.intellij.psi.PsiFile)1 XmlAttribute (com.intellij.psi.xml.XmlAttribute)1 XPathToken (org.intellij.lang.xpath.psi.XPathToken)1