Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | |
0.00% |
0 / 1 |
|
50.00% |
2 / 4 |
CRAP | |
81.82% |
9 / 11 |
MarkupTrait | |
0.00% |
0 / 1 |
|
50.00% |
2 / 4 |
6.22 | |
81.82% |
9 / 11 |
create | |
100.00% |
1 / 1 |
3 | |
100.00% |
8 / 8 |
|||
__toString | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
count | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
jsonSerialize | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
<?php | |
/** | |
* @file | |
* Contains \Drupal\Component\Render\MarkupTrait. | |
*/ | |
namespace Drupal\Component\Render; | |
use Drupal\Component\Utility\Unicode; | |
/** | |
* Implements MarkupInterface and Countable for rendered objects. | |
* | |
* @see \Drupal\Component\Render\MarkupInterface | |
*/ | |
trait MarkupTrait { | |
/** | |
* The safe string. | |
* | |
* @var string | |
*/ | |
protected $string; | |
/** | |
* Creates a Markup object if necessary. | |
* | |
* If $string is equal to a blank string then it is not necessary to create a | |
* Markup object. If $string is an object that implements MarkupInterface it | |
* is returned unchanged. | |
* | |
* @param mixed $string | |
* The string to mark as safe. This value will be cast to a string. | |
* | |
* @return string|\Drupal\Component\Render\MarkupInterface | |
* A safe string. | |
*/ | |
public static function create($string) { | |
if ($string instanceof MarkupInterface) { | |
return $string; | |
} | |
$string = (string) $string; | |
if ($string === '') { | |
return ''; | |
} | |
$safe_string = new static(); | |
$safe_string->string = $string; | |
return $safe_string; | |
} | |
/** | |
* Returns the string version of the Markup object. | |
* | |
* @return string | |
* The safe string content. | |
*/ | |
public function __toString() { | |
return $this->string; | |
} | |
/** | |
* Returns the string length. | |
* | |
* @return int | |
* The length of the string. | |
*/ | |
public function count() { | |
return Unicode::strlen($this->string); | |
} | |
/** | |
* Returns a representation of the object for use in JSON serialization. | |
* | |
* @return string | |
* The safe string content. | |
*/ | |
public function jsonSerialize() { | |
return $this->__toString(); | |
} | |
} |