2019-09-12 10:33:56 -07:00
|
|
|
import system'collections;
|
|
|
|
|
import extensions;
|
2016-12-05 22:15:40 +01:00
|
|
|
|
2019-09-12 10:33:56 -07:00
|
|
|
public program()
|
|
|
|
|
{
|
2016-12-05 22:15:40 +01:00
|
|
|
// Create a queue and "push" items into it
|
2019-09-12 10:33:56 -07:00
|
|
|
var queue := new Queue();
|
2016-12-05 22:15:40 +01:00
|
|
|
|
2019-09-12 10:33:56 -07:00
|
|
|
queue.push:1;
|
|
|
|
|
queue.push:3;
|
|
|
|
|
queue.push:5;
|
2016-12-05 22:15:40 +01:00
|
|
|
|
|
|
|
|
// "Pop" items from the queue in FIFO order
|
2019-09-12 10:33:56 -07:00
|
|
|
console.printLine(queue.pop()); // 1
|
|
|
|
|
console.printLine(queue.pop()); // 3
|
|
|
|
|
console.printLine(queue.pop()); // 5
|
2016-12-05 22:15:40 +01:00
|
|
|
|
|
|
|
|
// To tell if the queue is empty, we check the count
|
2019-09-12 10:33:56 -07:00
|
|
|
console.printLine("queue is ",(queue.Length == 0).iif("empty","nonempty"));
|
2016-12-05 22:15:40 +01:00
|
|
|
|
|
|
|
|
// If we try to pop from an empty queue, an exception
|
|
|
|
|
// is thrown.
|
2019-09-12 10:33:56 -07:00
|
|
|
queue.pop() | on:(e){ console.writeLine:"Queue empty." }
|
|
|
|
|
}
|