def guarantee_at_most_one_or_retire(decks: List[Deck]) -> Optional[Deck]: try: run = guarantee.at_most_one(decks) except TooManyItemsException: league.retire_deck(decks[0]) run = decks[1] return run
def maybe_load_person_by_mtggoldfish_name(username: str) -> Optional[Person]: return guarantee.at_most_one( load_people('p.mtggoldfish_username = {username}'.format( username=sqlescape(username))))
def maybe_load_person_by_discord_id( discord_id: Optional[int]) -> Optional[Person]: if discord_id is None: return None return guarantee.at_most_one(load_people(f'p.discord_id = {discord_id}'))
def load_person_by_tappedout_name(username: str) -> Optional[Person]: return guarantee.at_most_one( load_people('p.tappedout_username = {username}'.format( username=sqlescape(username))))
def load_person_by_discord_id(discord_id: Optional[int]) -> Optional[Person]: if discord_id is None: return None return guarantee.at_most_one( load_people('p.discord_id = {discord_id}'.format( discord_id=sqlescape(discord_id))))