hchokshi\SilverStripe\TraitConfig\TraitConfigTransformer
SilverStripe config transformer that takes configuration from traits and merges it into using classes, using aliases to avoid private static conflicts.
Synopsis
class TraitConfigTransformer
implements
TransformerInterface
{
- // constants
- const ALIAS_PHPDOC = '@aliasConfig';
- // members
- protected array $traitConfigCache = ;
- protected array $ownStaticCache = ;
- protected array $configMapCache = ;
- protected array|callable $classes;
- // methods
- public void __construct()
- public static void addToKernel()
- public void transform()
- protected array getClasses()
- protected void mergeTraitConfig()
- protected array getTraitConfig()
- protected mixed getCachedOrCall()
- protected array applyTraitConfigAliases()
- protected array getTraitConfigMap()
- protected array getAliasedConfigProperties()
- protected bool isConfigAliasProperty()
- protected string|null getAliasedConfigName()
- protected array getTraitOwnAliasedStatics()
- protected true isConfigValue()
Hierarchy
Implements
- SilverStripe\Config\Transformer\TransformerInterface
Constants
Name | Value |
---|---|
ALIAS_PHPDOC | '@aliasConfig' |
Members
protected
- $classes — hchokshi\SilverStripe\TraitConfig\array|callable
- $configMapCache — array
- $ownStaticCache — array
- $traitConfigCache — array
Methods
protected
- applyTraitConfigAliases() — Apply aliases to a trait's config.
- getAliasedConfigName() — Determine the config name a trait config property maps to.
- getAliasedConfigProperties() — Get the config private static properties for a trait that are aliased.
- getCachedOrCall() — Get a cached value, transparently calling a function and caching the result if not already cached.
- getClasses() — Get list of defined classes in the manifest.
- getTraitConfig() — Get the config for a trait to be merged into using class, with aliasing applied.
- getTraitConfigMap() — Get a map of (trait config name) => (actual config name).
- getTraitOwnAliasedStatics() — Get the config properties defined by a trait, ignoring properties defined by nested traits.
- isConfigAliasProperty() — Check if a property is a config alias.
- isConfigValue() — Detect if a value is a valid config value.
- mergeTraitConfig() — Merge a used trait's config into $class's config.
public
- __construct()
- addToKernel() — Add TraitConfigTransformer to a kernel's config manifest.
- transform()