mirror of
https://github.com/renbaoshuo/S2OJ.git
synced 2024-12-23 19:11:53 +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.
56 lines
1.3 KiB
PHP
56 lines
1.3 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Super-class for definition datatype objects, implements serialization
|
|
* functions for the class.
|
|
*/
|
|
abstract class HTMLPurifier_Definition
|
|
{
|
|
|
|
/**
|
|
* Has setup() been called yet?
|
|
* @type bool
|
|
*/
|
|
public $setup = false;
|
|
|
|
/**
|
|
* If true, write out the final definition object to the cache after
|
|
* setup. This will be true only if all invocations to get a raw
|
|
* definition object are also optimized. This does not cause file
|
|
* system thrashing because on subsequent calls the cached object
|
|
* is used and any writes to the raw definition object are short
|
|
* circuited. See enduser-customize.html for the high-level
|
|
* picture.
|
|
* @type bool
|
|
*/
|
|
public $optimized = null;
|
|
|
|
/**
|
|
* What type of definition is it?
|
|
* @type string
|
|
*/
|
|
public $type;
|
|
|
|
/**
|
|
* Sets up the definition object into the final form, something
|
|
* not done by the constructor
|
|
* @param HTMLPurifier_Config $config
|
|
*/
|
|
abstract protected function doSetup($config);
|
|
|
|
/**
|
|
* Setup function that aborts if already setup
|
|
* @param HTMLPurifier_Config $config
|
|
*/
|
|
public function setup($config)
|
|
{
|
|
if ($this->setup) {
|
|
return;
|
|
}
|
|
$this->setup = true;
|
|
$this->doSetup($config);
|
|
}
|
|
}
|
|
|
|
// vim: et sw=4 sts=4
|