How does \Magento\Eav\Model\Entity\Attribute\Set.php::addSetInfo() work?

Context: How does \Magento\Eav\Model\Entity\AbstractEntity::getSortedAttributes() work?



Details: How does \Magento\Eav\Model\Config::getAttribute() work?

Details: How does \Magento\Eav\Model\ResourceModel\Entity\Attribute\Set::getSetInfo() work?

958164/app/code/Magento/Eav/Model/Entity/Attribute/Set.php#L324-L325

		foreach ($attributes as $attribute) {
			$attribute = $this->_eavConfig->getAttribute($entityType, $attribute);
			if (!$attribute->getAttributeId()) {
				continue;
			}
			if (!in_array($attribute->getAttributeId(), $attributeIds)) {
				continue;
			}
			if (is_numeric($setId)) {
				$attributeSetInfo = $attribute->getAttributeSetInfo();
				if (!is_array($attributeSetInfo)) {
					$attributeSetInfo = [];
				}
				if (isset($setInfo[$attribute->getAttributeId()][$setId])) {
					$attributeSetInfo[$setId] = $setInfo[$attribute->getAttributeId()][$setId];
				}
				$attribute->setAttributeSetInfo($attributeSetInfo);
			} else {
				if (isset($setInfo[$attribute->getAttributeId()])) {
					$attribute->setAttributeSetInfo($setInfo[$attribute->getAttributeId()]);
				} else {
					$attribute->setAttributeSetInfo([]);
				}
			}
		}
	}

	return $this;
}