/** * Visit an element. * * @param \Hoa\Visitor\Element $element Element to visit. * @param mixed &$handle Handle (reference). * @param mixed $eldnah Handle (not reference). * @return mixed */ public function visit(Visitor\Element $element, &$handle = null, $eldnah = null) { ++self::$_i; $out = str_repeat('> ', self::$_i) . $element->getId(); if (null !== ($value = $element->getValue())) { $out .= '(' . ('default' !== $value['namespace'] ? $value['namespace'] . ':' : '') . $value['token'] . ', ' . $value['value'] . ')'; } $data = $element->getData(); if (!empty($data)) { $out .= ' ' . $this->dumpData($data); } $out .= "\n"; foreach ($element->getChildren() as $child) { $out .= $child->accept($this, $handle, $eldnah); } --self::$_i; return $out; }