RosettaCodeData/Task/Priority-queue/Perl-6/priority-queue-1.pl6

12 lines
227 B
Raku

class PriorityQueue {
has @!tasks;
method insert (Int $priority where * >= 0, $task) {
@!tasks[$priority].push: $task;
}
method get { @!tasks.first(?*).shift }
method is-empty { ?none @!tasks }
}