PATH:
home
/
letacommog
/
crmleta
/
libraries
/
htmlpurifier
/
library
/
HTMLPurifier
<?php /** * Generic property list implementation */ class HTMLPurifier_PropertyList { /** * Internal data-structure for properties */ protected $data = array(); /** * Parent plist */ protected $parent; protected $cache; public function __construct($parent = null) { $this->parent = $parent; } /** * Recursively retrieves the value for a key */ public function get($name) { if ($this->has($name)) return $this->data[$name]; // possible performance bottleneck, convert to iterative if necessary if ($this->parent) return $this->parent->get($name); throw new HTMLPurifier_Exception("Key '$name' not found"); } /** * Sets the value of a key, for this plist */ public function set($name, $value) { $this->data[$name] = $value; } /** * Returns true if a given key exists */ public function has($name) { return array_key_exists($name, $this->data); } /** * Resets a value to the value of it's parent, usually the default. If * no value is specified, the entire plist is reset. */ public function reset($name = null) { if ($name == null) $this->data = array(); else unset($this->data[$name]); } /** * Squashes this property list and all of its property lists into a single * array, and returns the array. This value is cached by default. * @param $force If true, ignores the cache and regenerates the array. */ public function squash($force = false) { if ($this->cache !== null && !$force) return $this->cache; if ($this->parent) { return $this->cache = array_merge($this->parent->squash($force), $this->data); } else { return $this->cache = $this->data; } } /** * Returns the parent plist. */ public function getParent() { return $this->parent; } /** * Sets the parent plist. */ public function setParent($plist) { $this->parent = $plist; } } // vim: et sw=4 sts=4
[+]
..
[-] PropertyList.php
[edit]
[+]
Injector
[-] ErrorStruct.php
[edit]
[-] Bootstrap.php
[edit]
[-] Printer.php
[edit]
[-] VarParserException.php
[edit]
[+]
Language
[-] ConfigSchema.php
[edit]
[-] Doctype.php
[edit]
[+]
Filter
[-] URIDefinition.php
[edit]
[-] URIScheme.php
[edit]
[+]
Lexer
[-] Context.php
[edit]
[+]
URIFilter
[+]
URIScheme
[-] VarParser.php
[edit]
[-] ElementDef.php
[edit]
[+]
DefinitionCache
[-] URISchemeRegistry.php
[edit]
[-] EntityParser.php
[edit]
[-] AttrValidator.php
[edit]
[-] URIFilter.php
[edit]
[+]
EntityLookup
[-] ContentSets.php
[edit]
[+]
VarParser
[-] UnitConverter.php
[edit]
[-] ErrorCollector.php
[edit]
[-] EntityLookup.php
[edit]
[-] Config.php
[edit]
[-] URI.php
[edit]
[-] DoctypeRegistry.php
[edit]
[+]
Token
[-] Strategy.php
[edit]
[+]
HTMLModule
[+]
AttrTransform
[-] Language.php
[edit]
[+]
TagTransform
[-] HTMLDefinition.php
[edit]
[-] LanguageFactory.php
[edit]
[+]
AttrDef
[+]
Strategy
[-] PropertyListIterator.php
[edit]
[-] Encoder.php
[edit]
[-] ChildDef.php
[edit]
[-] AttrCollections.php
[edit]
[-] Lexer.php
[edit]
[-] Exception.php
[edit]
[+]
Printer
[-] AttrDef.php
[edit]
[-] TokenFactory.php
[edit]
[-] Generator.php
[edit]
[-] DefinitionCache.php
[edit]
[-] TagTransform.php
[edit]
[-] StringHashParser.php
[edit]
[-] AttrTypes.php
[edit]
[-] StringHash.php
[edit]
[+]
ConfigSchema
[-] HTMLModuleManager.php
[edit]
[-] Token.php
[edit]
[-] URIParser.php
[edit]
[-] CSSDefinition.php
[edit]
[+]
ChildDef
[-] Length.php
[edit]
[-] PercentEncoder.php
[edit]
[-] Injector.php
[edit]
[-] AttrTransform.php
[edit]
[-] IDAccumulator.php
[edit]
[-] DefinitionCacheFactory.php
[edit]
[-] Definition.php
[edit]
[-] HTMLModule.php
[edit]
[-] Filter.php
[edit]