mirror of
https://github.com/renbaoshuo/S2OJ.git
synced 2024-11-27 02:16:20 +00:00
96d4a3ecf7
Due to historical reasons, the code is in subfolder "1". With SVN removal, we place the code back and remove the annoying "1" folder.
54 lines
1.3 KiB
PHP
54 lines
1.3 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Concrete text token class.
|
|
*
|
|
* Text tokens comprise of regular parsed character data (PCDATA) and raw
|
|
* character data (from the CDATA sections). Internally, their
|
|
* data is parsed with all entities expanded. Surprisingly, the text token
|
|
* does have a "tag name" called #PCDATA, which is how the DTD represents it
|
|
* in permissible child nodes.
|
|
*/
|
|
class HTMLPurifier_Token_Text extends HTMLPurifier_Token
|
|
{
|
|
|
|
/**
|
|
* @type string
|
|
*/
|
|
public $name = '#PCDATA';
|
|
/**< PCDATA tag name compatible with DTD. */
|
|
|
|
/**
|
|
* @type string
|
|
*/
|
|
public $data;
|
|
/**< Parsed character data of text. */
|
|
|
|
/**
|
|
* @type bool
|
|
*/
|
|
public $is_whitespace;
|
|
|
|
/**< Bool indicating if node is whitespace. */
|
|
|
|
/**
|
|
* Constructor, accepts data and determines if it is whitespace.
|
|
* @param string $data String parsed character data.
|
|
* @param int $line
|
|
* @param int $col
|
|
*/
|
|
public function __construct($data, $line = null, $col = null)
|
|
{
|
|
$this->data = $data;
|
|
$this->is_whitespace = ctype_space($data);
|
|
$this->line = $line;
|
|
$this->col = $col;
|
|
}
|
|
|
|
public function toNode() {
|
|
return new HTMLPurifier_Node_Text($this->data, $this->is_whitespace, $this->line, $this->col);
|
|
}
|
|
}
|
|
|
|
// vim: et sw=4 sts=4
|