{{ message }}
UtBot Symbolic Engine Restructuring #84
sergeypospelov
started this conversation in
Ideas
Replies: 1 comment
-
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment

Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Current Behavior
The engine (
UtBotSymbolicEngineclass) works as follows now:ExecutionStateand commits it to the state queue (PathSelector)ExecutionStateUtExecutionand adds to the result flowSadly, it all happens in one 3000-lines-of-code file (
UtBotSymbolicEngine.kt) and is very unclear.Problem
In some scenarios (e.g. ModelSynthesis) I would like to reuse, extend or replace internal parts of the engine independently. Possible cases:
ExecutionStatesymbolicallyPathSelector) depending on usage scenarioIdeas
[See the comments for more information]
The Engine Structure
Maybe it's possible to introduce such phases:
ExecutionStatetraversing [Traverser]UtExecutionsQ: How to organize this structure? Maybe the pipeline pattern? What are the phases?
Refactor the current version of the engine:
ExecutionStatetraversing logic to the external class [Traverser]UtBotSymbolicEngine.processResultlogic into two parts:ExecutionStateand passing it to the next stage [Traverser]ExecutionStatetoUtExecutionvia Resovler [Engine]Beta Was this translation helpful? Give feedback.
All reactions