Lines Matching refs:slots
45 protected $slots; variable in MediaWiki\\Revision\\RevisionSlots
50 * @param SlotRecord[]|callable $slots SlotRecords,
53 public function __construct( $slots ) { argument
54 Assert::parameterType( 'array|callable', $slots, '$slots' );
56 if ( is_callable( $slots ) ) {
57 $this->slots = $slots;
59 $this->setSlotsInternal( $slots );
64 * @param SlotRecord[] $slots
66 private function setSlotsInternal( array $slots ): void { argument
67 Assert::parameterElementType( SlotRecord::class, $slots, '$slots' );
69 $this->slots = [];
72 foreach ( $slots as $slot ) {
74 $this->slots[$role] = $slot;
109 $slots = $this->getSlots();
111 if ( isset( $slots[$role] ) ) {
112 return $slots[$role];
129 $slots = $this->getSlots();
131 return isset( $slots[$role] );
141 $slots = $this->getSlots();
142 return array_keys( $slots );
169 if ( is_callable( $this->slots ) ) {
170 $slots = call_user_func( $this->slots );
173 is_array( $slots ),
177 $this->setSlotsInternal( $slots );
180 return $this->slots;
196 $slots = $this->getPrimarySlots();
197 ksort( $slots );
199 if ( empty( $slots ) ) {
203 return array_reduce( $slots, static function ( $accu, SlotRecord $slot ) {