4 * Definition that allows a set of elements, and allows no children.
5 * @note This is a hack to reuse code from HTMLPurifier_ChildDef_Required,
6 * really, one shouldn't inherit from the other. Only altered behavior
7 * is to overload a returned false with an array. Thus, it will never
10 class HTMLPurifier_ChildDef_Optional
extends HTMLPurifier_ChildDef_Required
12 public $allow_empty = true;
13 public $type = 'optional';
14 public function validateChildren($tokens_of_children, $config, $context) {
15 $result = parent
::validateChildren($tokens_of_children, $config, $context);
16 // we assume that $tokens_of_children is not modified
17 if ($result === false) {
18 if (empty($tokens_of_children)) return true;
19 elseif ($this->whitespace
) return $tokens_of_children;