public final @NotNull PsiElementRef<Child> createChildRef(@NotNull Parent parent) {
    final Child existing = findLinkedChild(parent);
    if (existing != null) {
      return PsiElementRef.real(existing);
    }
    return PsiElementRef.imaginary(PsiElementRef.real(parent), this);
  }
public final @NotNull PsiElementRef<Child> createChildRef(@NotNull Parent parent)