@SuppressWarnings("unchecked")
  public final <T> T withGreenStubOrAst(
    Function<PsiFileStub<?>, T> stubProcessor,
    Function<FileElement, T> astProcessor
  ) {
    //noinspection rawtypes
    return withGreenStubOrAst((Class<PsiFileStub<?>>)(Class)PsiFileStub.class, stubProcessor, astProcessor);
  }
@SuppressWarnings("unchecked")
  public final <T> T withGreenStubOrAst(
    Function<PsiFileStub<?>, T> stubProcessor,
    Function<FileElement, T> astProcessor
  )