Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. ClassMetadataFactoryCompiler.php

function ClassMetadataFactoryCompiler::generateDeclaredClassMetadata

Parameters

ClassMetadataInterface[] $classMetadatas:

File

vendor/symfony/serializer/Mapping/Factory/ClassMetadataFactoryCompiler.php, line 40

Class

ClassMetadataFactoryCompiler
@author Fabien Bourigault <bourigaultfabien@gmail.com>

Namespace

Symfony\Component\Serializer\Mapping\Factory

Code

private function generateDeclaredClassMetadata(array $classMetadatas) : string {
    $compiled = '';
    foreach ($classMetadatas as $classMetadata) {
        $attributesMetadata = [];
        foreach ($classMetadata->getAttributesMetadata() as $attributeMetadata) {
            $attributesMetadata[$attributeMetadata->getName()] = [
                $attributeMetadata->getGroups(),
                $attributeMetadata->getMaxDepth(),
                $attributeMetadata->getSerializedName(),
                $attributeMetadata->getSerializedPath(),
            ];
        }
        $classDiscriminatorMapping = $classMetadata->getClassDiscriminatorMapping() ? [
            $classMetadata->getClassDiscriminatorMapping()
                ->getTypeProperty(),
            $classMetadata->getClassDiscriminatorMapping()
                ->getTypesMapping(),
        ] : null;
        $compiled .= \sprintf("\n'%s' => %s,", $classMetadata->getName(), VarExporter::export([
            $attributesMetadata,
            $classDiscriminatorMapping,
        ]));
    }
    return $compiled;
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal