├── .gitattributes
├── .github
├── release.yml
├── dependabot.yml
└── workflows
│ └── php.yml
├── .gitignore
├── .phive
└── phars.xml
├── templates
└── map.svg
├── .editorconfig
├── .env
├── src
├── Exception
│ ├── ExceptionInterface.php
│ ├── RefuseToMapException.php
│ ├── BadMethodCallException.php
│ ├── RuntimeException.php
│ ├── InvalidArgumentException.php
│ ├── LogicException.php
│ ├── UnexpectedValueException.php
│ ├── InvalidClassException.php
│ └── ContextAwareExceptionTrait.php
├── Attribute
│ ├── Eager.php
│ ├── AsObjectMapper.php
│ ├── AllowDelete.php
│ ├── AllowTargetDelete.php
│ ├── MapperAttributeInterface.php
│ ├── Unalterable.php
│ ├── AsPropertyMapper.php
│ ├── Map.php
│ ├── InheritanceMap.php
│ └── DateTimeOptions.php
├── ObjectCache
│ ├── Sentinel
│ │ ├── AbstractObjectCacheSentinel.php
│ │ └── CachedTargetObjectNotFoundSentinel.php
│ ├── ObjectCacheFactoryInterface.php
│ ├── Exception
│ │ ├── CircularReferenceException.php
│ │ └── NonSimpleTypeException.php
│ └── Implementation
│ │ └── ObjectCacheFactory.php
├── Transformer
│ ├── Exception
│ │ ├── MissingMemberTypeException.php
│ │ ├── PresetMappingNotFound.php
│ │ ├── NotMappableValueException.php
│ │ ├── UnsupportedPropertyMappingException.php
│ │ ├── RefuseToTransformException.php
│ │ ├── UninitializedSourcePropertyException.php
│ │ ├── NotAClassException.php
│ │ ├── PropertyPathAwarePropertyInfoExtractorException.php
│ │ ├── ClassNotInstantiableException.php
│ │ ├── InvalidClassException.php
│ │ ├── InvalidTypeInArgumentException.php
│ │ ├── InternalClassUnsupportedException.php
│ │ ├── UnableToReadException.php
│ │ ├── UnableToWriteException.php
│ │ ├── ExtraTargetPropertyNotFoundException.php
│ │ ├── SourceClassNotInInheritanceMapException.php
│ │ ├── NullSourceButMandatoryTargetException.php
│ │ ├── PairedPropertyNotFoundException.php
│ │ ├── MissingMemberValueTypeException.php
│ │ └── MissingMemberKeyTypeException.php
│ ├── ObjectToObjectMetadata
│ │ ├── Visibility.php
│ │ ├── ReadMode.php
│ │ ├── WriteMode.php
│ │ ├── ObjectToObjectMetadataFactoryInterface.php
│ │ └── Implementation
│ │ │ └── ProxyResolvingObjectToObjectMetadataFactory.php
│ ├── Context
│ │ ├── SourceClassAttributes.php
│ │ ├── TargetClassAttributes.php
│ │ ├── SourcePropertyAttributes.php
│ │ └── TargetPropertyAttributes.php
│ ├── MainTransformerAwareInterface.php
│ ├── MetadataUtil
│ │ ├── DynamicPropertiesDeterminerInterface.php
│ │ ├── Model
│ │ │ ├── Attributes.php
│ │ │ └── ClassMetadata.php
│ │ ├── PropertyMetadataFactoryInterface.php
│ │ ├── ClassMetadataFactoryInterface.php
│ │ ├── UnalterableDeterminerInterface.php
│ │ ├── PropertyMappingResolverInterface.php
│ │ ├── AttributesExtractorInterface.php
│ │ ├── DynamicPropertiesDeterminer
│ │ │ ├── DynamicPropertiesDeterminer.php
│ │ │ └── CachingDynamicPropertiesDeterminer.php
│ │ ├── PropertyAccessInfoExtractorInterface.php
│ │ ├── PropertyMetadataFactory
│ │ │ └── Util.php
│ │ ├── TargetClassResolverInterface.php
│ │ ├── AttributesExtractor
│ │ │ └── CachingAttributesExtractor.php
│ │ └── TargetClassResolver
│ │ │ └── CachingTargetClassResolver.php
│ ├── ArrayLikeMetadata
│ │ └── ArrayLikeMetadataFactoryInterface.php
│ ├── Processor
│ │ ├── ObjectProcessorInterface.php
│ │ ├── ObjectProcessorFactoryInterface.php
│ │ └── ObjectProcessor
│ │ │ └── DefaultObjectProcessorFactory.php
│ ├── MixedType.php
│ ├── EagerPropertiesResolver
│ │ ├── EagerPropertiesResolverInterface.php
│ │ └── Implementation
│ │ │ ├── ChainEagerPropertiesResolver.php
│ │ │ ├── DoctrineEagerPropertiesResolver.php
│ │ │ └── HeuristicsEagerPropertiesResolver.php
│ ├── TransformerInterface.php
│ ├── MainTransformerAwareTrait.php
│ ├── Implementation
│ │ ├── NullToNullTransformer.php
│ │ ├── CopyTransformer.php
│ │ ├── PresetTransformer.php
│ │ └── ScalarToScalarTransformer.php
│ ├── AbstractTransformerDecorator.php
│ ├── Model
│ │ ├── TraversableCountableWrapper.php
│ │ └── SplObjectStorageWrapper.php
│ ├── TypeMapping.php
│ └── Trait
│ │ └── WarmableArrayLikeTransformerTrait.php
├── CacheWarmer
│ ├── WarmableProxyRegistryInterface.php
│ ├── WarmableProxyFactoryInterface.php
│ ├── WarmableMapperInterface.php
│ ├── WarmableCacheInterface.php
│ ├── WarmableArrayLikeMetadataFactoryInterface.php
│ ├── WarmableTransformerInterface.php
│ ├── WarmableMainTransformerInterface.php
│ ├── WarmableObjectToObjectMetadataFactoryInterface.php
│ ├── WarmableTransformerRegistryInterface.php
│ ├── WarmableObjectMapperResolverInterface.php
│ ├── MappingCollection.php
│ ├── MappingCache.php
│ └── MapperCacheWarmer.php
├── Proxy
│ ├── ProxyRegistryInterface.php
│ ├── ProxyAutoloaderInterface.php
│ ├── ProxyMetadataFactoryInterface.php
│ ├── ProxyGeneratorInterface.php
│ ├── ProxyNamer.php
│ ├── ProxyFactoryInterface.php
│ ├── Exception
│ │ └── ProxyNotSupportedException.php
│ ├── Metadata
│ │ └── PropertyMetadata.php
│ └── Implementation
│ │ ├── CachingProxyMetadataFactory.php
│ │ ├── DoctrineProxyFactory.php
│ │ ├── DynamicPropertiesProxyFactory.php
│ │ ├── ProxyFactory.php
│ │ ├── WarmableVarExporterProxyFactory.php
│ │ ├── PhpProxyFactory.php
│ │ ├── ProxyGenerator.php
│ │ └── VarExporterProxyFactory.php
├── Mapping
│ ├── MappingFactoryInterface.php
│ ├── Implementation
│ │ └── MappingCacheWarmer.php
│ └── Mapping.php
├── CustomMapper
│ ├── ObjectMapperTableFactoryInterface.php
│ ├── PropertyMapperResolverInterface.php
│ ├── Exception
│ │ └── ObjectMapperNotFoundException.php
│ ├── ObjectMapperResolverInterface.php
│ ├── ObjectMapperTableEntry.php
│ └── Implementation
│ │ ├── ObjectMapperTableWarmer.php
│ │ ├── ObjectMapperTableFactory.php
│ │ └── ObjectMapperResolver.php
├── ListInterface.php
├── CollectionInterface.php
├── MapperInterface.php
├── Command
│ └── MarkdownLikeTableStyle.php
├── IterableMapperInterface.php
├── SubMapper
│ ├── Exception
│ │ └── CacheNotSupportedException.php
│ ├── SubMapperFactoryInterface.php
│ ├── SubMapperInterface.php
│ └── Implementation
│ │ └── SubMapperFactory.php
├── Debug
│ ├── Helper.php
│ ├── TraceableMappingFactory.php
│ ├── TraceableObjectToObjectMetadataFactory.php
│ └── TraceableMapper.php
├── MainTransformer
│ ├── MainTransformerInterface.php
│ ├── Model
│ │ ├── DebugContext.php
│ │ └── Path.php
│ └── Exception
│ │ ├── CircularReferenceException.php
│ │ ├── CannotFindTransformerException.php
│ │ └── TransformerReturnsUnexpectedValueException.php
├── TransformerRegistry
│ ├── TransformerRegistryInterface.php
│ ├── SearchResult.php
│ └── SearchResultEntry.php
├── Context
│ ├── MapperOptions.php
│ ├── ExtraTargetValues.php
│ └── Context.php
├── Util
│ ├── ServiceLocator.php
│ └── TypeGuesser.php
├── DependencyInjection
│ └── CompilerPass
│ │ └── RemoveOptionalDefinitionPass.php
├── ServiceMethod
│ └── ServiceMethodSpecification.php
├── RekalogikaMapperBundle.php
└── TypeResolver
│ ├── Implementation
│ └── TypeResolver.php
│ └── TypeResolverInterface.php
├── phpstan-extension.neon
├── config
├── debug.php
└── non-debug.php
├── phpunit.xml.dist.bak
├── LICENSE
├── .php-cs-fixer.dist.php
├── phpunit.xml.dist
├── Makefile
└── phpstan.neon.dist
/.gitattributes:
--------------------------------------------------------------------------------
1 | /tests export-ignore
2 |
--------------------------------------------------------------------------------
/.github/release.yml:
--------------------------------------------------------------------------------
1 | changelog:
2 | labels:
3 | - "*"
4 | exclude:
5 | labels:
6 | - dependencies
7 | - minor
8 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | composer.lock
2 | vendor/
3 | .phpunit.cache
4 | tools
5 | .php-cs-fixer.cache
6 | var
7 | rector.log
8 | .vscode
9 | .env.local
10 |
--------------------------------------------------------------------------------
/.phive/phars.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | version: 2
2 | updates:
3 | - package-ecosystem: "composer"
4 | directory: "/"
5 | schedule:
6 | interval: "weekly"
7 | - package-ecosystem: "github-actions"
8 | directory: "/"
9 | schedule:
10 | interval: "weekly"
11 |
--------------------------------------------------------------------------------
/templates/map.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | ; top-most EditorConfig file
2 | root = true
3 |
4 | ; Unix-style newlines
5 | [*]
6 | charset = utf-8
7 | end_of_line = LF
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
11 | [*.{php,html,twig}]
12 | indent_style = space
13 | indent_size = 4
14 |
15 | [*.md]
16 | max_line_length = 80
17 |
18 | [COMMIT_EDITMSG]
19 | max_line_length = 0
--------------------------------------------------------------------------------
/.env:
--------------------------------------------------------------------------------
1 | APP_ENV=test
2 | PHP=php
3 | SYMFONY=symfony
4 | COMPOSER=composer
5 |
6 | # use .env.local to override, example:
7 |
8 | # PHP with xdebug:
9 | # PHP="php -dxdebug.start_with_request=yes -dxdebug.mode=debug"
10 |
11 | # PHP using docker and xdebug:
12 | #PHP="docker run -it --rm --user $$(id -u):$$(id -g) -v $$PWD:/usr/src/myapp -w /usr/src/myapp php:8.4.0beta5-cli php -dxdebug.start_with_request=yes -dxdebug.mode=debug"
13 |
--------------------------------------------------------------------------------
/src/Exception/ExceptionInterface.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Exception;
15 |
16 | interface ExceptionInterface extends \Throwable {}
17 |
--------------------------------------------------------------------------------
/src/Attribute/Eager.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Attribute;
15 |
16 | #[\Attribute(\Attribute::TARGET_CLASS)]
17 | final readonly class Eager {}
18 |
--------------------------------------------------------------------------------
/src/ObjectCache/Sentinel/AbstractObjectCacheSentinel.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\ObjectCache\Sentinel;
15 |
16 | abstract class AbstractObjectCacheSentinel {}
17 |
--------------------------------------------------------------------------------
/src/Attribute/AsObjectMapper.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Attribute;
15 |
16 | #[\Attribute(\Attribute::TARGET_METHOD)]
17 | final readonly class AsObjectMapper {}
18 |
--------------------------------------------------------------------------------
/src/Exception/RefuseToMapException.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Exception;
15 |
16 | final class RefuseToMapException extends \RuntimeException implements ExceptionInterface {}
17 |
--------------------------------------------------------------------------------
/src/Attribute/AllowDelete.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Attribute;
15 |
16 | #[\Attribute(\Attribute::TARGET_PROPERTY | \Attribute::TARGET_METHOD)]
17 | final readonly class AllowDelete {}
18 |
--------------------------------------------------------------------------------
/src/Exception/BadMethodCallException.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Exception;
15 |
16 | final class BadMethodCallException extends \BadMethodCallException implements ExceptionInterface {}
17 |
--------------------------------------------------------------------------------
/src/Transformer/Exception/MissingMemberTypeException.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Transformer\Exception;
15 |
16 | abstract class MissingMemberTypeException extends NotMappableValueException {}
17 |
--------------------------------------------------------------------------------
/src/Attribute/AllowTargetDelete.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Attribute;
15 |
16 | #[\Attribute(\Attribute::TARGET_PROPERTY | \Attribute::TARGET_METHOD)]
17 | final readonly class AllowTargetDelete {}
18 |
--------------------------------------------------------------------------------
/src/ObjectCache/ObjectCacheFactoryInterface.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\ObjectCache;
15 |
16 | interface ObjectCacheFactoryInterface
17 | {
18 | public function createObjectCache(): ObjectCache;
19 | }
20 |
--------------------------------------------------------------------------------
/src/ObjectCache/Sentinel/CachedTargetObjectNotFoundSentinel.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\ObjectCache\Sentinel;
15 |
16 | final class CachedTargetObjectNotFoundSentinel extends AbstractObjectCacheSentinel {}
17 |
--------------------------------------------------------------------------------
/src/Exception/RuntimeException.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Exception;
15 |
16 | class RuntimeException extends \RuntimeException implements ExceptionInterface
17 | {
18 | use ContextAwareExceptionTrait;
19 | }
20 |
--------------------------------------------------------------------------------
/src/Transformer/Exception/PresetMappingNotFound.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Transformer\Exception;
15 |
16 | use Rekalogika\Mapper\Exception\RuntimeException;
17 |
18 | final class PresetMappingNotFound extends RuntimeException {}
19 |
--------------------------------------------------------------------------------
/src/Exception/InvalidArgumentException.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Exception;
15 |
16 | class InvalidArgumentException extends \InvalidArgumentException implements ExceptionInterface
17 | {
18 | use ContextAwareExceptionTrait;
19 | }
20 |
--------------------------------------------------------------------------------
/src/Exception/LogicException.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Exception;
15 |
16 | /**
17 | * @api
18 | */
19 | class LogicException extends \LogicException implements ExceptionInterface
20 | {
21 | use ContextAwareExceptionTrait;
22 | }
23 |
--------------------------------------------------------------------------------
/src/Exception/UnexpectedValueException.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Exception;
15 |
16 | class UnexpectedValueException extends \UnexpectedValueException implements ExceptionInterface
17 | {
18 | use ContextAwareExceptionTrait;
19 | }
20 |
--------------------------------------------------------------------------------
/phpstan-extension.neon:
--------------------------------------------------------------------------------
1 | parameters:
2 | rekalogika-mapper:
3 | mapperDumpFile: null
4 |
5 | parametersSchema:
6 | rekalogika-mapper: structure([
7 | mapperDumpFile: schema(string(), nullable())
8 | ])
9 |
10 | services:
11 | -
12 | class: Rekalogika\Mapper\PHPStan\MapperCollector
13 | tags:
14 | - phpstan.collector
15 | -
16 | class: Rekalogika\Mapper\PHPStan\MapperRule
17 | arguments:
18 | mapperDumpFile: %rekalogika-mapper.mapperDumpFile%
19 | tags:
20 | - phpstan.rules.rule
21 |
--------------------------------------------------------------------------------
/src/CacheWarmer/WarmableProxyRegistryInterface.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\CacheWarmer;
15 |
16 | interface WarmableProxyRegistryInterface
17 | {
18 | public function warmingRegisterProxy(string $class, string $sourceCode): void;
19 | }
20 |
--------------------------------------------------------------------------------
/src/Proxy/ProxyRegistryInterface.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Proxy;
15 |
16 | /**
17 | * @internal
18 | */
19 | interface ProxyRegistryInterface
20 | {
21 | public function registerProxy(string $class, string $sourceCode): void;
22 | }
23 |
--------------------------------------------------------------------------------
/src/Attribute/MapperAttributeInterface.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Attribute;
15 |
16 | /**
17 | * To allow matching using an attribute, your attribute class must implement
18 | * this interface.
19 | */
20 | interface MapperAttributeInterface {}
21 |
--------------------------------------------------------------------------------
/src/Transformer/Exception/NotMappableValueException.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Transformer\Exception;
15 |
16 | use Rekalogika\Mapper\Exception\UnexpectedValueException;
17 |
18 | abstract class NotMappableValueException extends UnexpectedValueException {}
19 |
--------------------------------------------------------------------------------
/src/Mapping/MappingFactoryInterface.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Mapping;
15 |
16 | /**
17 | * Initialize transformer mappings
18 | *
19 | * @internal
20 | */
21 | interface MappingFactoryInterface
22 | {
23 | public function getMapping(): Mapping;
24 | }
25 |
--------------------------------------------------------------------------------
/src/Attribute/Unalterable.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Attribute;
15 |
16 | #[\Attribute(\Attribute::TARGET_CLASS)]
17 | final readonly class Unalterable
18 | {
19 | public function __construct(
20 | public bool $isUnalterable = true,
21 | ) {}
22 | }
23 |
--------------------------------------------------------------------------------
/src/CustomMapper/ObjectMapperTableFactoryInterface.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\CustomMapper;
15 |
16 | /**
17 | * @internal
18 | */
19 | interface ObjectMapperTableFactoryInterface
20 | {
21 | public function createObjectMapperTable(): ObjectMapperTable;
22 | }
23 |
--------------------------------------------------------------------------------
/src/Proxy/ProxyAutoloaderInterface.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Proxy;
15 |
16 | /**
17 | * @internal
18 | */
19 | interface ProxyAutoloaderInterface
20 | {
21 | public function registerAutoloader(): void;
22 |
23 | public function unregisterAutoloader(): void;
24 | }
25 |
--------------------------------------------------------------------------------
/src/CacheWarmer/WarmableProxyFactoryInterface.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\CacheWarmer;
15 |
16 | interface WarmableProxyFactoryInterface
17 | {
18 | /**
19 | * @param class-string $class
20 | */
21 | public function warmingCreateProxy(string $class): void;
22 | }
23 |
--------------------------------------------------------------------------------
/src/Transformer/ObjectToObjectMetadata/Visibility.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Transformer\ObjectToObjectMetadata;
15 |
16 | /**
17 | * @internal
18 | */
19 | enum Visibility
20 | {
21 | case None;
22 | case Public;
23 | case Protected;
24 | case Private;
25 | }
26 |
--------------------------------------------------------------------------------
/src/Transformer/Context/SourceClassAttributes.php:
--------------------------------------------------------------------------------
1 |
9 | *
10 | * For the full copyright and license information, please view the LICENSE file
11 | * that was distributed with this source code.
12 | */
13 |
14 | namespace Rekalogika\Mapper\Transformer\Context;
15 |
16 | /**
17 | * @implements \IteratorAggregate