public static function parse($attrValue)
	{
		preg_match_all('(\\{\\{|\\{(?:[^\'"}]|\'[^\']*\'|"[^"]*")+\\}|\\{|[^{]++)', $attrValue, $matches);

		$tokens  = [];
		foreach ($matches[0] as $str)
		{
			if ($str === '{{' || $str === '{')
			{
				$tokens[] = ['literal', '{'];
			}
			elseif ($str[0] === '{')
			{
				$tokens[] = ['expression', substr($str, 1, -1)];
			}
			else
			{
				$tokens[] = ['literal', str_replace('}}', '}', $str)];
			}
		}

		return $tokens;
	}