Removes the top element from buf by swapping it with the bottom element, adjusting it down the heap, and reducing the length of buf by one.
The heap to modify. This parameter is marked 'ref' because buf.length will be altered.
The evaluation predicate, which should return true if e1 is less than e2 and false if not. This predicate may be any callable type.
See Implementation
Removes the top element from buf by swapping it with the bottom element, adjusting it down the heap, and reducing the length of buf by one.