29 lines
915 B
PHP
29 lines
915 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Metadata;
|
|
|
|
/**
|
|
* Interface for Metadata Factory implementations.
|
|
*
|
|
* @author Johannes M. Schmitt <schmittjoh@gmail.com>
|
|
*/
|
|
interface MetadataFactoryInterface
|
|
{
|
|
/**
|
|
* Returns the gathered metadata for the given class name.
|
|
*
|
|
* If the drivers return instances of MergeableClassMetadata, these will be
|
|
* merged prior to returning. Otherwise, all metadata for the inheritance
|
|
* hierarchy will be returned as ClassHierarchyMetadata unmerged.
|
|
*
|
|
* If no metadata is available, null is returned.
|
|
*
|
|
* @return ClassHierarchyMetadata|MergeableClassMetadata|null
|
|
*
|
|
* @phpcsSuppress SlevomatCodingStandard.TypeHints.ReturnTypeHint.MissingNativeTypeHint
|
|
* @phpcsSuppress SlevomatCodingStandard.TypeHints.TypeHintDeclaration.UselessReturnAnnotation
|
|
*/
|
|
public function getMetadataForClass(string $className);
|
|
}
|