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.
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
WIP: Enumerator<T> trait #37
base: master
Are you sure you want to change the base?
WIP: Enumerator<T> trait #37
Changes from 26 commits
6a32b86
0be0251
6c2088a
2545eae
6baa11f
73cc542
768df4e
c7aaacc
dc59bea
4b8307e
eee7d1d
37015dd
924d685
323abfd
aae5518
2ebc186
5e63373
a0e370f
bcfbdb1
9d52831
5b3b315
23395ac
16142fb
2b4b2f6
a090841
07132ad
ee50ca5
ef77a1c
f172ef5
08876c0
89984b4
64f257f
a5c7863
e449f61
6a0c220
a811a1f
a208cd4
e68755c
4aca2f3
256aabe
2f2aa05
5986181
47dcc9d
49de185
a32f73b
377de50
e38755c
5f6e167
006a553
f339ada
8c88b21
4cae439
f321710
bd81878
e066a2d
cf6ac72
300c012
bad3054
bcb450d
8139631
8607ee7
2efc280
259f899
b036c66
627ec2a
abe9233
18a2ef4
fd231a1
be37f10
f43d0cc
278a650
636f139
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
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.
Where is this needed? For all
new
allocations in thisDemo
module, I gave the trait as an explicit type of the receiving variable and everything still verifies. For example, I changed the declarations ofe1
,e2
, ande
inExample2()
toThere 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.
Example2
is just fine with that because it doesn't assert anything about the behavior of the enumerators. ButConcatenate
has a post-condition that isn't verified if I remove the explicit type declaration on L119. That's because it needs the extra post-condition implied by!ConcatEnumerator.HasNext()
, so Dafny doesn't have enough information if I don't guide it to recognize the concrete type of that enumerator. I'm trying to figure out if there's a better solution there.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.
Ah don't spend any further thought on this, I have a solution that seems to work nicely. Will push something tomorrow.