<slide>
<title>PHP 7.4: Typed Properties</title>

<example><![CDATA[<?php
class ezcMailImapTransportOptions 
{
    protected $properties;

    public function __construct( array $options = array() )
    {
        $this->uidReferencing = false;
    }

    public function __set( $name, $value )
    {
        switch ( $name ) {
            case 'uidReferencing':
                if ( !is_bool( $value ) ) {
                    throw new ezcBaseValueException( $name, $value, 'bool' );
                }
                $this->properties[$name] = $value;
                break;
        }
    }

    // …
}
?>]]></example>

</slide>
