| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 | <?php/** * Abstract base token class that all others inherit from. */abstract class HTMLPurifier_Token{    /**     * Line number node was on in source document. Null if unknown.     * @type int     */    public $line;    /**     * Column of line node was on in source document. Null if unknown.     * @type int     */    public $col;    /**     * Lookup array of processing that this token is exempt from.     * Currently, valid values are "ValidateAttributes" and     * "MakeWellFormed_TagClosedError"     * @type array     */    public $armor = array();    /**     * Used during MakeWellFormed.  See Note [Injector skips]     * @type     */    public $skip;    /**     * @type     */    public $rewind;    /**     * @type     */    public $carryover;    /**     * @param string $n     * @return null|string     */    public function __get($n)    {        if ($n === 'type') {            trigger_error('Deprecated type property called; use instanceof', E_USER_NOTICE);            switch (get_class($this)) {                case 'HTMLPurifier_Token_Start':                    return 'start';                case 'HTMLPurifier_Token_Empty':                    return 'empty';                case 'HTMLPurifier_Token_End':                    return 'end';                case 'HTMLPurifier_Token_Text':                    return 'text';                case 'HTMLPurifier_Token_Comment':                    return 'comment';                default:                    return null;            }        }    }    /**     * Sets the position of the token in the source document.     * @param int $l     * @param int $c     */    public function position($l = null, $c = null)    {        $this->line = $l;        $this->col = $c;    }    /**     * Convenience function for DirectLex settings line/col position.     * @param int $l     * @param int $c     */    public function rawPosition($l, $c)    {        if ($c === -1) {            $l++;        }        $this->line = $l;        $this->col = $c;    }    /**     * Converts a token into its corresponding node.     */    abstract public function toNode();}// vim: et sw=4 sts=4
 |