eternacht

u/eternacht@programming.dev
1 posts · 11 comments

Recent posts

Recent comments

+1 for Immich, I tried photoprism and had a lot of trouble importing and organizing an existing library. Immich works much more intuitively and had all the features I needed.

This is the real answer, overloads are meant for exactly this purpose.

It’ll be something like this:

from typing import Literal, overload

@overload
def foo() -> Data: …
@overload
def foo(return_more: Literal[True]) -> tuple[Data, Data]: …
def foo(return_more: bool = False) -> Data | tuple[Data, Data]
    ...
    if return_more:
        return data, more_data
   return data