type terminationOrdering … // newTerminationOrdering constructs a terminationOrdering based on the pod spec and the currently running containers. func newTerminationOrdering(pod *v1.Pod, runningContainerNames []string) *terminationOrdering { … } // waitForTurn waits until it is time for the container with the specified name to begin terminating, up until // the specified grace period. If gracePeriod = 0, there is no wait. func (o *terminationOrdering) waitForTurn(name string, gracePeriod int64) float64 { … } // containerTerminated should be called once the container with the specified name has exited. func (o *terminationOrdering) containerTerminated(name string) { … }