protected function marshalScheme($scheme): ? string
    {
        if ( null === $scheme ) {
            return null;
        }

        if ( ! is_string($scheme) ) {
            throw new UriException(
                'Scheme must be a string'
            );
        }

        return strtolower($scheme);
    }
protected function marshalScheme($scheme): ? string
    {
        if ( null === $scheme ) {
            return null;
        }

        if ( ! is_string($scheme) ) {
            throw new UriException(
                'Scheme must be a string'
            );
        }

        return strtolower($scheme);
    }
protected function marshalScheme ( $ scheme ) : ? string { if ( null === $ scheme ) { return null ; } if ( ! is_string ( $ scheme ) ) { throw new UriException ( 'Scheme must be a string' ) ; } return strtolower ( $ scheme ) ; }
marshals the scheme.

@param $scheme
@return null|string
@throws UriException
marshals the scheme .