69 if (count($types) == 1) {
74 foreach ($types as $object) {
75 if (!$object instanceof
Type) {
78 $ancestorsList[] = $object->getAncestors();
81 $lct = $ancestorsList[0][0];
82 foreach ($ancestorsList[0] as
$i => $ancestors) {
103 $class = $ancestorsList[0][
$i];
104 foreach ($ancestorsList as $class_hierarchy) {
105 if (count($class_hierarchy) <=
$i) {
108 if (!$class_hierarchy[
$i]->
equals($class)) {
120 foreach (
$list as $value) {
121 $valueWrapped = $this->wrapValue($value);
122 $this->list[] = $valueWrapped;
123 $types[] = $valueWrapped->getType();
170 foreach ($this->
getList() as $value) {
171 $hashes .= $value->getHash();
194 $otherValues = $other->getList();
196 if (count(
$values) != count($otherValues)) {
227 if (!is_object($object)) {
232 $class = get_class($object);
235 $hierarchy[] = $class;
236 }
while (($class = get_parent_class($class)) !==
false);
calculateLowestCommonType($types)
Todo: This implementation is not performing well (needs the most iterations) on lists with all the sa...
unserialize($serialized)
Constructs the object.
serialize()
String representation of object.
__construct()
ListValue constructor.
sameClassOnLevel($ancestorsList, $i)
getClassHierarchy($object)