-
Notifications
You must be signed in to change notification settings - Fork 1
Adding filled dialect to represent grids with vacancies in it.
#41
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
Conversation
|
☂️ Python Coverage
Overall Coverage
New Files
Modified Files
|
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
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.
Pull request overview
This PR adds a new filled dialect to represent grids with vacancies, allowing users to work with grids that have some positions marked as vacant. The implementation includes type definitions, statements, concrete interpreters, and comprehensive test coverage.
- Introduces
FilledGridclass that wraps a parent grid and tracks vacant positions - Adds
vacateandfilloperations to mark positions as vacant or filled - Updates the dependency from
kirin-toolchain~=0.18.0tokirin-toolchain~=0.22.0
Reviewed changes
Copilot reviewed 16 out of 17 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
| test/grid/test_typeinfer.py | Updated import path to use dialects subpackage |
| test/grid/test_concrete.py | Updated import path to use dialects subpackage |
| test/filled/test_api.py | Added comprehensive tests for filled grid operations |
| test/filled/init.py | Created test package for filled dialect |
| src/bloqade/geometry/prelude.py | Integrated filled dialect into geometry dialect group |
| src/bloqade/geometry/dialects/grid/types.py | Removed SliceAttribute handling; added row_x_pos and col_y_pos methods |
| src/bloqade/geometry/dialects/grid/stmts.py | Added RowXPos and ColYPos statement definitions |
| src/bloqade/geometry/dialects/grid/concrete.py | Implemented concrete interpreters for new grid statements |
| src/bloqade/geometry/dialects/grid/_interface.py | Added interface functions for row_xpos and col_ypos |
| src/bloqade/geometry/dialects/filled/types.py | Defined FilledGrid type with vacancy tracking and grid operations |
| src/bloqade/geometry/dialects/filled/stmts.py | Defined Vacate, Fill, and GetParent statements |
| src/bloqade/geometry/dialects/filled/concrete.py | Implemented concrete interpreters for filled operations |
| src/bloqade/geometry/dialects/filled/_interface.py | Defined interface functions for vacate, fill, and get_parent |
| src/bloqade/geometry/dialects/filled/_dialect.py | Created dialect definition for filled |
| src/bloqade/geometry/dialects/filled/init.py | Exported filled dialect components |
| src/bloqade/geometry/init.py | Exposed filled and grid interfaces at package level |
| pyproject.toml | Updated kirin-toolchain dependency version |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This is ported from bloqade-shuttle as it is more widely applicable.