add bound syntax for type variable tuples and parameter specifications
オープン
まだ誰も着手していません。
interpreter-core
topic-typing
type-feature
- 主要言語
- Python
- スター
- 77.2k
- フォーク
- 35.9k
- PR マージ指標
- PR 指標を取得中
説明
Feature or enhancement
Proposal:
# typical forms
class A[T: int, *Ts: int, **P: [int]]: ...
A[
str, # error
int, # ok, matching Ts bound
str, # error, not matching Ts bound
[str], # error, not matching P bound
]
A[
int, # ok
int, # ok, matching Ts bound
bool, # ok, matching Ts bound
[int], # ok, matching P bound
]
# tvt unpacked form
class B[*Ts: *tuple[int, str]]: ...
B[
int, # ok
int, # error, not subtype of str
int, # error, too many types
]
Has this already been discussed elsewhere?
I have already discussed this feature proposal on Discourse
Links to previous discussion of this feature:
Linked PRs
- gh-148946
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
実装ファイルやテストは指定されていません。まずリンク先の Discourse ディスカッションと PR gh-148946 を読み、次に提案にある境界付き型変数タプルとパラメータ仕様の例がどのように動作すべきかを追ってください。完了の条件は、文書化された例が有効な引数を受け入れ、無効な境界とアリティを拒否することです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- python
- 領域
- compilers
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 30/100