Skip to content
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

Cleanup handle (Part ???) #3777

Draft
wants to merge 7 commits into
base: master
Choose a base branch
from
Draft

Conversation

ktbarrett
Copy link
Member

Some more changes.

  • Support assigning str to LogicObjects
  • Adds support for left, right, direction, and range to ArrayObject, LogicObject and StringObject.
  • Removes IndexableValueObjectBase, only ArrayObject now support indexing and iteration.
  • Fix discovery tests now...

@ktbarrett ktbarrett force-pushed the cleanup-handle branch 3 times, most recently from bca0f26 to 424847e Compare March 14, 2024 00:51
@marlonjames marlonjames added type:cleanup cleanup or refactoring on code, documentation, or other areas category:codebase:handle relating to handles or handle types (BinaryValue) labels Mar 14, 2024
src/cocotb/handle.py Outdated Show resolved Hide resolved
src/cocotb/handle.py Outdated Show resolved Hide resolved
@ktbarrett
Copy link
Member Author

ktbarrett commented May 20, 2024

Blocked by #3608.

I plan on making a PackedObject and splitting LogicObject into LogicObject (for logic scalars) and LogicArrayObject (for single dimension logic arrays). PackedObject requires GPI_PACKED_STRUCT from that commit.

Adds simulator.get_indexable to test an object for indexability, while
still allowing the user to get the range.
This adds the range, left, direction, and right properties which should
be more intuitive than the previous `_range` and `_range_iter` methods.
This changes the return type of ArrayObjects to be Arrays. This allows
the simulator objects indexing to be used rather than just 0 to
length-1 as was done for list.

Lists, and now any sequence, is still accepted when setting the value in
addition to Array.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:codebase:handle relating to handles or handle types (BinaryValue) type:cleanup cleanup or refactoring on code, documentation, or other areas
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants