pub enum Step {
DropEventTypes(Vec<String>),
KeepEventTypes(Vec<String>),
DropEventsWhere(EventPredicate),
RenameEventTypes(BTreeMap<String, String>),
TimeWindow(TimeWindow),
KeepObjectTypes(Vec<String>),
DropObjectsWithoutEvents,
MapObjectIds(AliasTable),
}Expand description
One transformation step. Applied in recipe order; each step’s effect is reported (events/objects before and after).
Variants§
DropEventTypes(Vec<String>)
Drop every event of these types. Objects stay (use
Step::DropObjectsWithoutEvents to clean up afterwards).
KeepEventTypes(Vec<String>)
Keep only events of these types.
DropEventsWhere(EventPredicate)
Drop events matching the predicate (all set conditions must hold).
RenameEventTypes(BTreeMap<String, String>)
Rename event types; several old names mapping to one new name merge.
TimeWindow(TimeWindow)
Keep only events inside the half-open window [from, to). Object
attribute observations are not trimmed.
KeepObjectTypes(Vec<String>)
Keep objects of these types; events no longer related to any kept object are dropped (their other E2O links are stripped).
DropObjectsWithoutEvents
Drop objects no remaining event references (O2O links to dropped objects are stripped from survivors).
MapObjectIds(AliasTable)
Re-key objects through an alias table (identity resolution as data, not code): ids map to their alias or stay as they are; several ids mapping to one canonical id merge, and every E2O/O2O reference follows.