MediaWiki  master
MediaWiki\Debug\DeprecatablePropertyArray Class Reference

ArrayAccess implementation that supports deprecating access to certain properties. More...

Inheritance diagram for MediaWiki\Debug\DeprecatablePropertyArray:
Collaboration diagram for MediaWiki\Debug\DeprecatablePropertyArray:

Public Member Functions

 __construct (array $initializer, array $deprecatedProperties, string $name, string $component=null)
 
 offsetExists ( $offset)
 
 offsetGet ( $offset)
 
 offsetSet ( $offset, $value)
 
 offsetUnset ( $offset)
 

Private Member Functions

 checkDeprecatedAccess ( $offset, string $fname)
 

Private Attributes

string null $component
 
array $container
 
array $deprecatedProperties
 Map of deprecated property names to deprecation versions. More...
 
string $name
 

Detailed Description

ArrayAccess implementation that supports deprecating access to certain properties.

It behaves mostly as a normal array, however in order to avoid instantiating deprecated properties by default, a callable initializer can be set to the property. It will be executed upon 'get'.

Note
setting properties does not emit deprecation warnings. @newable
Since
1.35

Definition at line 16 of file DeprecatablePropertyArray.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\Debug\DeprecatablePropertyArray::__construct ( array  $initializer,
array  $deprecatedProperties,
string  $name,
string  $component = null 
)
Parameters
array$initializerInitial value of the array.
array$deprecatedPropertiesMap of deprecated property names to versions.
string$nameDescriptive identifier for the array
string | null$componentComponent to which array belongs. If not provided, assumed to be MW Core

Definition at line 37 of file DeprecatablePropertyArray.php.

References MediaWiki\Debug\DeprecatablePropertyArray\$component, MediaWiki\Debug\DeprecatablePropertyArray\$deprecatedProperties, and MediaWiki\Debug\DeprecatablePropertyArray\$name.

Member Function Documentation

◆ checkDeprecatedAccess()

MediaWiki\Debug\DeprecatablePropertyArray::checkDeprecatedAccess (   $offset,
string  $fname 
)
private

◆ offsetExists()

MediaWiki\Debug\DeprecatablePropertyArray::offsetExists (   $offset)

◆ offsetGet()

MediaWiki\Debug\DeprecatablePropertyArray::offsetGet (   $offset)

◆ offsetSet()

MediaWiki\Debug\DeprecatablePropertyArray::offsetSet (   $offset,
  $value 
)

Definition at line 63 of file DeprecatablePropertyArray.php.

◆ offsetUnset()

MediaWiki\Debug\DeprecatablePropertyArray::offsetUnset (   $offset)

Member Data Documentation

◆ $component

string null MediaWiki\Debug\DeprecatablePropertyArray::$component
private

◆ $container

array MediaWiki\Debug\DeprecatablePropertyArray::$container
private

Definition at line 19 of file DeprecatablePropertyArray.php.

◆ $deprecatedProperties

array MediaWiki\Debug\DeprecatablePropertyArray::$deprecatedProperties
private

Map of deprecated property names to deprecation versions.

Definition at line 22 of file DeprecatablePropertyArray.php.

Referenced by MediaWiki\Debug\DeprecatablePropertyArray\__construct().

◆ $name

string MediaWiki\Debug\DeprecatablePropertyArray::$name
private

The documentation for this class was generated from the following file: