function parse_all() {
		$this->errors = array();
		$this->status['last_pos'] = -1;

		if (($this->token === self::TOK_TAG_OPEN) || ($this->next_pos('<', false) === self::TOK_UNKNOWN)) {
			do {
				if (!$this->parse_tag()) {
					return false;
				}
			} while ($this->next_pos('<') !== self::TOK_NULL);
		}

		$this->pos = $this->size;
		$this->parse_text();

		return true;
	}