Skip to content

Commit

Permalink
fix FixedTuple type hints
Browse files Browse the repository at this point in the history
  • Loading branch information
MatthieuDartiailh committed Mar 21, 2024
1 parent 7f475b4 commit 087bf37
Showing 1 changed file with 19 additions and 7 deletions.
26 changes: 19 additions & 7 deletions atom/tuple.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,17 @@
#
# The full license is in the file LICENSE, distributed with this software.
# --------------------------------------------------------------------------------------
from typing import Any, Optional, Tuple as TTuple, Type, TypeVar, Union, overload
from typing import (
Any,
Optional,
Tuple as TTuple,
Type,
TypeVar,
Union,
overload,
)

from typing_extensions import Unpack

from .catom import Member

Expand Down Expand Up @@ -51,29 +61,31 @@ TT = TypeVar("TT", bound=tuple)
class FixedTuple(Member[TT, TT]):
@overload
def __new__(
cls, *items: *TTuple[Member[T, Any]], default: Optional[TTuple[T]] = None
cls, *items: Unpack[TTuple[Member[T, Any]]], default: Optional[TTuple[T]] = None
) -> FixedTuple[TTuple[T]]: ...
@overload
def __new__(
cls,
*items: *TTuple[Member[T, Any], Member[T1, Any]],
*items: Unpack[TTuple[Member[T, Any], Member[T1, Any]]],
default: Optional[TTuple[T, T1]] = None,
) -> FixedTuple[TTuple[T, T1]]: ...
@overload
def __new__(
cls,
*items: *TTuple[Member[T, Any], Member[T1, Any], Member[T2, Any]],
*items: Unpack[TTuple[Member[T, Any], Member[T1, Any], Member[T2, Any]]],
default: Optional[TTuple[T, T1, T2]] = None,
) -> FixedTuple[TTuple[T, T1, T2]]: ...
@overload
def __new__(
cls, *items: *TTuple[T], default: Optional[TTuple[T]] = None
cls, *items: Unpack[TTuple[T]], default: Optional[TTuple[T]] = None
) -> FixedTuple[TTuple[T]]: ...
@overload
def __new__(
cls, *items: *TTuple[T, T1], default: Optional[TTuple[T, T1]] = None
cls, *items: Unpack[TTuple[T, T1]], default: Optional[TTuple[T, T1]] = None
) -> FixedTuple[TTuple[T, T1]]: ...
@overload
def __new__(
cls, *items: *TTuple[T, T1, T2], default: Optional[TTuple[T, T1, T2]] = None
cls,
*items: Unpack[TTuple[T, T1, T2]],
default: Optional[TTuple[T, T1, T2]] = None,
) -> FixedTuple[TTuple[T, T1, T2]]: ...

0 comments on commit 087bf37

Please sign in to comment.