<?php

/* 
 * Przykładowy kod do książki: Algorytmy i struktury danych w języku PHP 7
 * 
 * Autor: Mizanur Rahman <mizanur.rahman@gmail.com>
 * 
 */

require __DIR__ . '/vendor/autoload.php';

use Tarsana\Functional as F;

$queue = [];

$enqueue = F\append(F\__(), F\__());
$head = F\head(F\__());
$dequeue = F\tail(F\__());

$queue = $enqueue(1, $queue);
$queue = $enqueue(2, $queue);
$queue = $enqueue(3, $queue);

echo "Kolejka to: ".F\toString($queue)."\n";

$item = $head($queue);
$queue = $dequeue($queue);

echo "Usunięty element: ".$item."\n";
echo "Kolejka to: ".F\toString($queue)."\n";

$queue = $enqueue(4, $queue);

echo "Kolejka to: ".F\toString($queue)."\n";