/** * Returns concatenation field-descriptor for given general metadata. * * @param GeneralPropertyMetadata $generalMetadata * @param ConcatenationTypeMetadata $type * @param array $options * * @return DoctrineConcatenationFieldDescriptor */ protected function getConcatenationFieldDescriptor(GeneralPropertyMetadata $generalMetadata, ConcatenationTypeMetadata $type, $options) { return new DoctrineConcatenationFieldDescriptor(array_map(function (FieldMetadata $fieldMetadata) use($generalMetadata, $options) { return $this->getFieldDescriptor($generalMetadata, $fieldMetadata, $options); }, $type->getFields()), $this->resolveOptions($generalMetadata->getName(), $options), $generalMetadata->getTranslation(), $this->resolveOptions($type->getGlue(), $options), $this->isDisabled($generalMetadata), $this->isDefault($generalMetadata), $generalMetadata->getType(), $generalMetadata->getWidth(), $generalMetadata->getMinWidth(), $generalMetadata->isSortable(), $generalMetadata->isEditable(), $generalMetadata->getCssClass()); }