type orderEvent …
type gStatus …
type gState …
const gDead …
const gRunnable …
const gRunning …
const gWaiting …
const unordered …
const garbage …
const noseq …
const seqinc …
func stateTransition(ev *Event) (g uint64, init, next gState) { … }
func transitionReady(g uint64, curr, init gState) bool { … }
func transition(gs map[uint64]gState, g uint64, init, next gState) error { … }
type orderEventList …
func (l *orderEventList) Less(i, j int) bool { … }
func (h *orderEventList) Push(x orderEvent) { … }
func (h *orderEventList) Pop() orderEvent { … }
func heapUp(h *orderEventList, j int) { … }
func heapDown(h *orderEventList, i0, n int) bool { … }