QueryResults

:= []

Reads the QueryResults that step gets, and builds them for tests.

empty : QueryResults

No Contacts, no RayHits and no OverlapHits. The first step gets it.

ray : QueryResults, U64 -> Try(RayHit, [Miss])

The hit of the owner's Raycast in slot 0, or Miss.

ray_slot : QueryResults, U64, U32 -> Try(RayHit, [Miss])

The hit of the owner's Raycast in slot, or Miss.

overlaps : QueryResults, U64, U32 -> List(U64)

The ids that the owner's Overlap in slot touched, in id order.