[jvm-lang] add jvm->psi convertSubstitutor()

This commit is contained in:
Daniil Ovchinnikov
2017-09-12 15:18:20 +02:00
parent 451a253469
commit c75ef8a5cf
3 changed files with 18 additions and 3 deletions
@@ -17,6 +17,7 @@ package com.intellij.psi;
import com.intellij.lang.jvm.JvmTypeDeclaration;
import com.intellij.lang.jvm.JvmTypeParameter;
import com.intellij.lang.jvm.types.JvmSubstitutor;
import com.intellij.openapi.components.ServiceManager;
import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.NotNull;
@@ -34,4 +35,7 @@ public interface JvmPsiConversionHelper {
@NotNull
PsiTypeParameter convertTypeParameter(@NotNull JvmTypeParameter typeParameter);
@NotNull
PsiSubstitutor convertSubstitutor(@NotNull JvmSubstitutor substitutor);
}
@@ -41,4 +41,9 @@ public class PsiJvmSubstitutor implements JvmSubstitutor {
PsiTypeParameter psiTypeParameter = helper.convertTypeParameter(typeParameter);
return mySubstitutor.substitute(psiTypeParameter);
}
@NotNull
public PsiSubstitutor getPsiSubstitutor() {
return mySubstitutor;
}
}
@@ -17,9 +17,8 @@ package com.intellij.psi.impl;
import com.intellij.lang.jvm.JvmTypeDeclaration;
import com.intellij.lang.jvm.JvmTypeParameter;
import com.intellij.psi.JvmPsiConversionHelper;
import com.intellij.psi.PsiClass;
import com.intellij.psi.PsiTypeParameter;
import com.intellij.lang.jvm.types.JvmSubstitutor;
import com.intellij.psi.*;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -37,4 +36,11 @@ public class JvmPsiConversionHelperImpl implements JvmPsiConversionHelper {
if (typeParameter instanceof PsiTypeParameter) return (PsiTypeParameter)typeParameter;
throw new RuntimeException("TODO");
}
@NotNull
@Override
public PsiSubstitutor convertSubstitutor(@NotNull JvmSubstitutor substitutor) {
if (substitutor instanceof PsiJvmSubstitutor) return ((PsiJvmSubstitutor)substitutor).getPsiSubstitutor();
throw new RuntimeException("TODO");
}
}