Support `Literal` types
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 38/100
Rechercherichtung
Beginne damit nachzuverfolgen, wie typeclass, AssociatedType, Supports und @some.instance delegierte Typen behandeln, und vergleiche diesen Pfad anschließend mit dem Beispiel Literal[1]. Als abgeschlossen gilt die Aufgabe, wenn das Beispiel die Typprüfung besteht und some(1) über die Literal-Registrierung korrekt aufgelöst wird, wobei das bestehende Delegate-Verhalten erhalten bleibt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
After we have delegate in-place we can use Literal types.
But, now they are not supported.
Ideally, something like this should work:
from classes import typeclass, AssociatedType, Supports
from typing_extensions import Literal
class SomeDelegate(object):
... # TODO: write proper `__instancecheck__`
class A(AssociatedType):
...
@typeclass(A)
def some(instance) -> int:
...
@some.instance(Literal[1], delegate=SomeDelegate)
def _some_tuple(instance: Literal[1]) -> int:
return instance
def test(i: Supports[A]):
return some(i)
some(1)
- Vorherrschende Sprache
- Python
- Sterne
- 730
- Forks
- 30
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus dry-python/classes
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 35/100
dry-python/classes#496 ·
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 45/100
dry-python/classes#494 ·
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 52/100
dry-python/classes#492 · 2 Kommentare ·
-
bug
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 35/100
dry-python/classes#481 · 5 Kommentare · 4 Reaktionen ·
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 35/100
dry-python/classes#386 ·
Alle Issues in dry-python/classes
Ähnliche Issues
-
bug confirmed issue
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
open-webui/open-webui#30750 · 1 Kommentar ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
OpenwaterHealth/openmotion-bloodflow-app#604 · 1 Kommentar ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
-
good first issue
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 90/100