//
// class Collection {
//     public function forEach(callable $callback) {
//         echo 'forEach!';
//     }
//     public function list() {
//         echo 'list';
//     }
//     public static function new(array $itens) {
//         return new self($itens);
//     }
// }
//
// Collection::new(['foo', 'bar'])->forEach(function($index, $item) {
//     echo 'hello';
// })->list();
class View
{
    public function include(View $view)
    {
        // ...
        echo 'include!';
    }
}
$viewA = new View('a.view');
$viewA->include(new View('b.view'));
class HTTP
{
    const CONTINUE = 100;
}
echo HTTP::CONTINUE;