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

[VAST] ExternPackageType & tighten space invariants. #1720

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

cdleary
Copy link
Collaborator

@cdleary cdleary commented Nov 15, 2024

Adds an ExternPackageType to refer to types defined in other packages (that we do not know the underlying bit width for or have a definition to refer to in the current VerilogFile).

In the process found it was hard to reason about the invariants of Emit() giving back associated spaces for types and EmitWithIdentifier() and similar -- reworked that so all Emit functionality gives back a value with no whitespace to strip so the caller knows what to expect. Previously it was confusing/confused because DataKind could be empty string and DataType could also be empty string in various cases. Case in point this fixed an error in the test where there were two spaces after the output keyword.

Also adds a bunch of tests for constructs we're about to use in stitching just to ensure they were all possible.

Adds an `ExternPackageType` to refer to types defined in other packages (that
we do not know the underlying bit width for or have a definition to refer to in
the current `VerilogFile`).

In the process found it was hard to reason about the invariants of `Emit()`
giving back associated spaces for types and `EmitWithIdentifier()` and similar
-- reworked that so all Emit functionality gives back a value with no
whitespace to strip so the caller knows what to expect. Previously it was
confusing/confused because DataKind could be empty string and DataType could
also be empty string in various cases. Case in point this fixed an error in the
test where there were two spaces after the `output` keyword.

Also adds a bunch of tests for constructs we're about to use in stitching just
to ensure they were all possible.
@cdleary
Copy link
Collaborator Author

cdleary commented Nov 15, 2024

@proppy note I got "Nighly Build MkDocs And Commit HTML / deploy (pull_request)" failure on this PR

Copy link
Collaborator

@meheff meheff left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice! Thanks for cleaning up the whitespace mess.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants