function set( str ) {
	/* eslint-disable no-invalid-this */
	if ( !isString( str ) ) {
		throw new TypeError( format( 'invalid assignment. `%s` must be a string. Value: `%s`.', 'title', str ) );
	}
	if ( str !== this._title ) {
		debug( 'Current value: %s.', this._title );

		this._title = str;
		debug( 'New value: %s.', this._title );

		this.emit( 'change' );
	}
}
Sets the title.

@private
@param {string} str - title
@throws {TypeError} must be a string