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
15 public $allow_empty = true;
20 public $type = 'optional';
23 * @param array $tokens_of_children
24 * @param HTMLPurifier_Config $config
25 * @param HTMLPurifier_Context $context
28 public function validateChildren($tokens_of_children, $config, $context)
30 $result = parent
::validateChildren($tokens_of_children, $config, $context);
31 // we assume that $tokens_of_children is not modified
32 if ($result === false) {
33 if (empty($tokens_of_children)) {
35 } elseif ($this->whitespace
) {
36 return $tokens_of_children;