mixed) $options */ public function __construct( array $options = array() ) { $this->headerTypes = array( '==', '--', '=', '-', '^', '~', '`', '*', ':', '+', '/', '.', ); $this->wordWrap = 78; $this->itemListCharacter = '-'; parent::__construct( $options ); } /** * Sets the option $name to $value. * * @throws ezcBasePropertyNotFoundException * if the property $name is not defined * @throws ezcBaseValueException * if $value is not correct for the property $name * @param string $name * @param mixed $value * @ignore */ public function __set( $name, $value ) { switch ( $name ) { case 'headerTypes': if ( !is_array( $value ) ) { throw new ezcBaseValueException( $name, $value, 'array' ); } $this->properties[$name] = $value; break; case 'wordWrap': if ( !is_numeric( $value ) ) { throw new ezcBaseValueException( $name, $value, 'int' ); } $this->properties[$name] = (int) $value; break; case 'itemListCharacter': if ( !in_array( $value, $listCharacters = array( '*', '-', '+', "\xe2\x80\xa2", "\xe2\x80\xa3", "\xe2\x81\x83" ), true ) ) { throw new ezcBaseValueException( $name, $value, 'Item list characters: ' . implode( ', ', $listCharacters ) ); } $this->properties[$name] = $value; break; default: parent::__set( $name, $value ); } } } ?>