MapFieldItemList.php

Same filename and directory in other branches
  1. 9 core/lib/Drupal/Core/Field/MapFieldItemList.php
  2. 8.9.x core/lib/Drupal/Core/Field/MapFieldItemList.php
  3. 10 core/lib/Drupal/Core/Field/MapFieldItemList.php

Namespace

Drupal\Core\Field

File

core/lib/Drupal/Core/Field/MapFieldItemList.php

View source
<?php

namespace Drupal\Core\Field;


/**
 * Defines an item list class for map fields.
 */
class MapFieldItemList extends FieldItemList {
    
    /**
     * {@inheritdoc}
     */
    public function equals(FieldItemListInterface $list_to_compare) {
        $count1 = count($this);
        $count2 = count($list_to_compare);
        if ($count1 === 0 && $count2 === 0) {
            // Both are empty we can safely assume that it did not change.
            return TRUE;
        }
        if ($count1 !== $count2) {
            // The number of items is different so they do not have the same values.
            return FALSE;
        }
        // The map field type does not have any property defined (because they are
        // dynamic), so the only way to evaluate the equality for it is to rely
        // solely on its values.
        $value1 = $this->getValue();
        $value2 = $list_to_compare->getValue();
        return $value1 == $value2;
    }

}

Classes

Title Deprecated Summary
MapFieldItemList Defines an item list class for map fields.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.