Skip to main content

resolve

Function resolve 

Source
pub async fn resolve<States, AuthSets, Fetch>(
    rules: &RoomVersionRules,
    state_maps: States,
    auth_sets: AuthSets,
    fetch: Fetch,
    hydra_backports: bool,
) -> Result<StateMap<OwnedEventId>>
where States: Stream<Item = StateMap<OwnedEventId>> + Send, AuthSets: Stream<Item = AuthSet<OwnedEventId>> + Send, Fetch: FetchEvent,
Expand description

Resolves the state of a room with the version 2 state resolution algorithm.

Each of state_maps is one possible fork of the room’s state, and auth_sets holds the full recursive auth chain of each fork’s events, where an event repeated within one set counts once. fetch loads an event by ID, and rules are those of the room’s version. The caller must ensure that all the events are from the same room.