-
Notifications
You must be signed in to change notification settings - Fork 16
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
[python] Introducing virtual objects with multiple sets of slots #209
Conversation
...hon-main/src/main/kotlin/org/usvm/machine/interpreters/concrete/ConcretePythonInterpreter.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-main/src/main/java/org/usvm/interpreter/CPythonAdapter.java
Outdated
Show resolved
Hide resolved
Also, please add some unit tests for generated virtual objects. For example, add a test where you create an object without You might need this function |
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.
Left the comments above.
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/types/VirtualTypes.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-annotations/src/main/kotlin/org/usvm/annotations/ids/SlotId.kt
Show resolved
Hide resolved
usvm-python/src/test/kotlin/org/usvm/samples/VirtualObjectsTest.kt
Outdated
Show resolved
Hide resolved
usvm-python/src/test/kotlin/org/usvm/samples/VirtualObjectsTest.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/types/VirtualTypes.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-annotations/src/main/kotlin/org/usvm/annotations/ids/SlotId.kt
Outdated
Show resolved
Hide resolved
...hon-main/src/main/kotlin/org/usvm/machine/interpreters/concrete/ConcretePythonInterpreter.kt
Show resolved
Hide resolved
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.
detekt found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.
...n-annotations/src/main/kotlin/org/usvm/annotations/codegeneration/AvailableSlotGeneration.kt
Fixed
Show fixed
Hide fixed
usvm-python/usvm-python-annotations/src/main/kotlin/org/usvm/annotations/ids/SlotId.kt
Fixed
Show fixed
Hide fixed
...hon-main/src/main/kotlin/org/usvm/machine/interpreters/concrete/utils/VirtualPythonObject.kt
Fixed
Show fixed
Hide fixed
Fine with me. Waiting for review from @sergeypospelov. |
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.
Minor questions
...hon-main/src/main/kotlin/org/usvm/machine/interpreters/concrete/utils/VirtualPythonObject.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-main/src/main/kotlin/org/usvm/machine/types/VirtualTypes.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-annotations/src/main/kotlin/org/usvm/annotations/ids/SlotId.kt
Outdated
Show resolved
Hide resolved
usvm-python/usvm-python-annotations/src/main/kotlin/org/usvm/annotations/ids/SlotId.kt
Outdated
Show resolved
Hide resolved
General comment for @sergeypospelov. This is some preliminary work for fixing a major issue: |
Allows to fix the problem with
PyMockTypeStream
when it doesn't start withMockType
.Now it is possible to create multiple virtual object types, the slots for which are specified using a mask.