]> git.immae.eu Git - github/wallabag/wallabag.git/blob - inc/3rdparty/htmlpurifier/HTMLPurifier/Definition.php
[add] HTML Purifier added to clean code
[github/wallabag/wallabag.git] / inc / 3rdparty / htmlpurifier / HTMLPurifier / Definition.php
1 <?php
2
3 /**
4 * Super-class for definition datatype objects, implements serialization
5 * functions for the class.
6 */
7 abstract class HTMLPurifier_Definition
8 {
9
10 /**
11 * Has setup() been called yet?
12 * @type bool
13 */
14 public $setup = false;
15
16 /**
17 * If true, write out the final definition object to the cache after
18 * setup. This will be true only if all invocations to get a raw
19 * definition object are also optimized. This does not cause file
20 * system thrashing because on subsequent calls the cached object
21 * is used and any writes to the raw definition object are short
22 * circuited. See enduser-customize.html for the high-level
23 * picture.
24 * @type bool
25 */
26 public $optimized = null;
27
28 /**
29 * What type of definition is it?
30 * @type string
31 */
32 public $type;
33
34 /**
35 * Sets up the definition object into the final form, something
36 * not done by the constructor
37 * @param HTMLPurifier_Config $config
38 */
39 abstract protected function doSetup($config);
40
41 /**
42 * Setup function that aborts if already setup
43 * @param HTMLPurifier_Config $config
44 */
45 public function setup($config)
46 {
47 if ($this->setup) {
48 return;
49 }
50 $this->setup = true;
51 $this->doSetup($config);
52 }
53 }
54
55 // vim: et sw=4 sts=4