-
Notifications
You must be signed in to change notification settings - Fork 45
Closed
Labels
comp-symbolic-engineIssue is related to the symbolic execution engineIssue is related to the symbolic execution enginectg-refactoringIssue related to refactoring processIssue related to refactoring processpriority-top-focusTop priority chosen by dev teamTop priority chosen by dev team
Description
Description
Now UtBotSymbolicEngine
class consists of Soot traversing logic, working with symbolic variables and working with the state queue. We need to separate this logic into different classes. The first thing to do is to extract the traversal logic, as well as the logic of working with symbolic variables, into separate Traverser
class.
This changes also requires ExecutionState
to be refactored. We need somehow to distinguish different type of states, so it's proposed to define a common state interface and make inheritors:
- TerminalState
- ExecutionState
Expected behavior
UtBotSymboicEngine.kt
is split into two parts:
- UtBotSymbolicEngine.kt
- Traverser.kt
ExecutionState
is refactored.
Potential alternatives
Leave all as it is.
Context
See this discussion on refactoring for more information.
Metadata
Metadata
Assignees
Labels
comp-symbolic-engineIssue is related to the symbolic execution engineIssue is related to the symbolic execution enginectg-refactoringIssue related to refactoring processIssue related to refactoring processpriority-top-focusTop priority chosen by dev teamTop priority chosen by dev team
Type
Projects
Status
Done