-
Notifications
You must be signed in to change notification settings - Fork 1.4k
[ty] Homogeneous and mixed tuples #18600
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
+2,453
−779
Merged
Changes from all commits
Commits
Show all changes
65 commits
Select commit
Hold shift + click to select a range
14cccc0
fixed-length
dcreager 6602a88
variable
dcreager c5545df
don't require either
dcreager 0a84630
use variable tuples
dcreager 5b6ab9f
use tupletype for homogeneous tuples
dcreager f62d536
variable-length isn't gradual
dcreager 3e0e0d8
remove unused stuff
dcreager d7fe320
more tests
dcreager 9a8b715
use todo_type instead of diagnostic
dcreager 216cabe
return unknown not error
dcreager 3f71700
Merge branch 'main' into dcreager/tuple-spec
dcreager f1bb6c0
todo about comparing variable-length tuples
dcreager 22d5092
more tests
dcreager bd91962
revert legacy_generic_class_context change
dcreager ca7d0bf
Add a bunch of subtyping/assignability tests
dcreager 4f03416
clippy
dcreager c36a145
mdlint
dcreager 2e41487
support indexing into variable-length tuples
dcreager 76d3c1d
fix tests
dcreager b7f9252
fix project panic
dcreager b3d83bc
Merge branch 'main' into dcreager/tuple-spec
dcreager d3a0473
Include todo in tuple
dcreager 5334cc8
Merge branch 'main' into dcreager/tuple-spec
dcreager b5bc037
Fix merge conflicts
dcreager d6711bd
disable mypy in ecosystem check
dcreager 8eac6be
instantiate tuple class to TupleType
dcreager 32a52bf
not for instances too, I guess?
dcreager a4755e0
mdlint
dcreager b69a00c
remove fwomp!!!
dcreager f7f302d
Use vec instead of smallvec
dcreager 14e225a
don't expand variable-length tuples during overload resolution
dcreager 187af5b
track (summarized for now) tuple elements in generic alias
dcreager 0a7f6f1
track tuple spec in specialization
dcreager 604b484
Merge branch 'main' into dcreager/tuple-spec
dcreager 9a50239
fix tests
dcreager 4614fa6
update mdtest comment
dcreager 1c029b6
consider tuple spec when checking assignability
dcreager 2bad8f2
todo: nominal instance when instantiating tuple; include suffix when …
dcreager 0f47e9e
Merge branch 'main' into dcreager/tuple-spec
dcreager 458ddce
rename tuple constructors
dcreager 5de4fdb
remove homogeneous_supertype
dcreager 5bc1bad
fix equivalence
dcreager d2bea1b
clean up the diff
dcreager 6a81c7f
todo: check suffix/prefix, Unpack special form
dcreager 2c0ed94
regen
dcreager 7a059d7
index into suffix
dcreager ef0cf0e
index into prefix
dcreager 45cd117
clippy
dcreager 94ab866
Apply suggestions from code review
dcreager 0aff62e
typo
dcreager ec873e7
remove `tuple_of`
dcreager 4901b22
explain display comment better
dcreager 90463fa
rename elements methods
dcreager 3cf5944
rename nominal instance disjoint
dcreager 8406319
describe tuple specs better
dcreager 18d7e88
Merge branch 'main' into dcreager/tuple-spec
dcreager f11f8a5
fix variable <: fixed checks
dcreager ae1a844
add tuple length tests
dcreager c9a4edd
mdlint
dcreager 233e0a4
add tests for instantiating via `tuple()`
dcreager 7faaba3
add link to spec for gradual tuple type
dcreager 1d7a614
add links to tuple spec
dcreager c52c845
add generic tuple inference todo tests
dcreager a10bf50
add note about homogeneous disjointness
dcreager e5aa429
Merge branch 'main' into dcreager/tuple-spec
dcreager File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is so cool!!