pypeline: split ScheduledTask

Due to the drifting differences, split `ScheduledTask` into
`PipeScheduledTask` and `SavepointScheduledTask`, which allows each to
specialize on the task it has to accomplish.
This commit is contained in:
Giacomo Vercesi
2026-04-02 17:57:09 +02:00
parent e6bdae206e
commit bbff447181
4 changed files with 128 additions and 91 deletions
+2 -2
View File
@@ -18,7 +18,7 @@ from revng.pypeline.object import Kind, ObjectID, ObjectSet
from revng.pypeline.pipeline import AnalysisBinding, Pipeline
from revng.pypeline.pipeline_node import PipelineConfiguration, PipelineNode
from revng.pypeline.runner_context import RunnerContext
from revng.pypeline.schedule.scheduled_task import ScheduledTask
from revng.pypeline.schedule.scheduled_task import SavepointScheduledTask
from revng.pypeline.storage.memory import InMemoryStorageProvider
from revng.pypeline.storage.storage_provider import ContainerLocation
from revng.pypeline.task.pipe import Pipe
@@ -159,7 +159,7 @@ def check_simple_pipeline():
foo_bar_request = Requests({child_cont: ObjectSet.from_list([foo, bar])})
# Pre-populate the storage
task = ScheduledTask(
task = SavepointScheduledTask(
begin_node,
ReadOnlyModel(model),
storage_provider,