@param $content
@param string $name
@param string $http_equiv
@param string $property

@return $this
197905
public function addMeta(string $content, string $name = '', string $http_equiv = '', string $property = ''): PageHead
    {
        $this->meta[] = [
            'content'    => $content,
            'name'       => $name,
            'http_equiv' => $http_equiv,
            'property'   => $property
        ];

        return $this;
    }
858752
public function addMeta(string $name, string $content)
    {
        $args = func_get_args();

        return $this->set('page', 'meta', ...$args);
    }
310158
private function parseBlock($name,$content = '') {
        if(is_array($name)){
            $content = $name[2];
            $name    = $name[1];
        }
        $this->block[$name]  =   $content;
        return '';
    }
1326463
public function addProperty($property, $content, $position = 100)
    {
        $attr = [
            'property' => $property,
            'content' => $content
        ];
        $this->add($attr, $position);
        return $this;
    }
195699
public function setContent($content)
    {
        $context = $this->_context;

        $context->content = (string)$content;

        return $this;
    }
490744
final public function withHeader(string $name, string $value) : HttpException
    {
        $this->headers[$name] = $value;

        return $this;
    }
688125
public static function create($name, $content = '', $attribs = [], $forcePair = false)
    {
        $name = trim($name);

        $tag = '<' . $name;

        $tag .= static::buildAttributes($attribs);

        if ($content !== null) {
            $tag .= '>' . $content . '</' . $name . '>';
        } else {
            $tag .= $forcePair ? '></' . $name . '>' : ' />';
        }

        return $tag;
    }
1087707
private function addMediaContent($property, $content, $element)
    {
        $finfo = new \finfo();
        $mimeType = $finfo->buffer($content, FILEINFO_MIME_TYPE);

        if (strpos($mimeType, ';') !== false) {
            $mimeType = strstr($mimeType, ';', true);
        }
        if (!is_string($mimeType) || substr($mimeType, 0, 6) !== 'image/') {
            throw VCardException::invalidImage();
        }
        $fileType = strtoupper(substr($mimeType, 6));

        $content = base64_encode($content);
        $property .= ";ENCODING=b;TYPE=" . $fileType;

        $this->setProperty(
            $element,
            $property,
            $content
        );
    }
1109379
public static HtmlTree META(String httpEquiv, String content, String charSet) {
        HtmlTree htmltree = new HtmlTree(HtmlTag.META);
        String contentCharset = content + "; charset=" + charSet;
        htmltree.addAttr(HtmlAttr.HTTP_EQUIV, nullCheck(httpEquiv));
        htmltree.addAttr(HtmlAttr.CONTENT, contentCharset);
        return htmltree;
    }
284530
public static function create(string $content, string $asName, string $contentType = null): ContentDownload
    {
        $self = new static($content);
        $self->setAsName($asName);

        if ($contentType !== null) {
            $self->setContentType($contentType);
        }

        return $self;
    }
572724
public function append($name, $content = null)
	{
		if (is_array($content)) {
			$first = $this->append($name, $content[0]);
			for ($i = 1; $i < count($content); $i++) {
				$this->append($name, $content[$i]);
			}
			return $first;
		}
		return $this->appendChild($this->newChild($name, $content));
	}
445568
public static function make($name, $content, $propertyName = 'name', $prefix = '')
    {
        return new self($name, $content, $propertyName, $prefix);
    }
207658
public function addContent($content, $key = null)
    {
        if (!is_null($key)) {
            $this->contents[$key] = $content;
        } else {
            $this->contents[] = $content;
        }

        return $this;
    }
973745
public function addContent(string $cid, string $content, string $name = null, string $mimeType = null): void
    {
        $embed = new ContentEmbed();
        $embed->cid = $cid;
        $embed->content = $content;
        if ($name !== null) {
            $embed->name = $name;
        }
        if ($mimeType !== null) {
            $embed->mimeType = $mimeType;
        }
        $this->set($embed);
    }
39992
public function header(string $name, $value): HttpRequest
    {
        if (!array_key_exists($name, $this->headers)) {
            $this->headers[$name] = array();
        }
        $this->headers[$name][] = $value;

        return $this;
    }
602171
public function render($name, $content)
    {
        list($data, $content) = (array) Matter::parse($content);

        $data = array_merge($data, (array) $this->data);

        $data['title'] = isset($data['title']) ? $data['title'] : '';

        $output = $this->website->content()->make($content);

        if ($data['title'] === '') {
            preg_match('/<h1>(.*?)<\/h1>/', $output, $matches);

            isset($matches[1]) && $data['title'] = $matches[1];
        }

        $data['content'] = (string) $output;

        return $this->renderer->render($name, $data);
    }
181868
public function addProperty($name, $property=null) {
		$name = strtolower($name);
		if($property === null)
			$property = 'string';
		if(is_string($property))
			$property = ['type'=>$property];
		if(is_array($property)) {
			foreach($property as $k=>$v) {
				if(is_int($k)) {
					unset($property[$k]);
					$property[$v] = true;
				}
			}

			if(!isset($property['type']) || !$property['type'])
				$property['type'] = 'string';

			$type = $property['type'];
			$property = $this->getContainer()->make('Asgard.Entity.PropertyType.'.$type, [$property], function($params) use($type) {
				$class = '\Asgard\Entity\Property\\'.ucfirst(strtolower($type)).'Property';
				return new $class($params);
			});
		}

		$property->setDefinition($this);
		$property->setName($name);

		if($property->getPosition() === null)
			$property->setPosition(count($this->properties)+1);
		$this->properties[$name] = $property;

		uasort($this->properties, function($a, $b) {
			return $a->getPosition() > $b->getPosition();
		});
	}