• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/orm/objectify/entityobject.php
  • Класс: BitrixMainORMObjectifyEntityObject
  • Вызов: EntityObject::filterValuesByMask
protected function filterValuesByMask(array $values, int $fieldsMask, bool $invertedFilter = false): array
{
	if ($fieldsMask === FieldTypeMask::ALL)
	{
		return $invertedFilter ? [] : $values;
	}

	return array_filter($values, function($fieldName) use ($fieldsMask, $invertedFilter)
	{
		$maskOfSingleField = $this->entity->getField($fieldName)->getTypeMask();
		$matchesMask = (bool)($fieldsMask & $maskOfSingleField);

		return $invertedFilter ? !$matchesMask: $matchesMask;
	}, ARRAY_FILTER_USE_KEY);
}