public static SourcePosition createFromLineComputable(@NotNull final PsiFile file, final Computable<Integer> line) {
    return new SourcePositionCache(file) {
      @Override
      protected int calcLine() {
        return line.compute();
      }
    };
  }
public static SourcePosition createFromLineComputable(@NotNull final PsiFile file, final Computable<Integer> line)