?
useful for reading elements while a criterion is met. Can be used like while IPlugQueue.ElementsAvailable() && q.peek().mTime < 100 { elem = q.pop() ... }