Index

Frame

MMO\client\scs · 1 symbol · generated 30 Sep 2026

class

Frame

Frame.php:11

The css generation state at one point of the compilation: which selectors are being emitted, inside which at-rules, and at which @order priority.

class MMO\client\scs\Frame
Namespace
MMO\client\scs
A frame creates its [`CssRule`](https://mmoframework.fr/documentation/mmo.client/php/scs/CssRule.md#cssrule) lazily, so a rule that ends up with no declaration of its own (because everything it contains is nested or responsive) never reaches the output.

Index

Properties6

emitter

MMO\client\scs\Emitter $emitter
Type
Emitter

location

where the rule being emitted was written, for the source map

?MMO\client\scs\SourceLocation $location
Type
null | SourceLocation

order

int $order
Type
int

rule

?MMO\client\scs\CssRule $rule = null
Type
null | CssRule

selectors

array $selectors
Type
array

wrappers

array $wrappers
Type
array

Methods4

child($selectors, $wrappers, $location)

Frame.php:34
function child( ?array $selectors = null, ?array $wrappers = null, ?MMO\client\scs\SourceLocation $location = null ): static
$selectors = nullnull | arraynull to keep the current ones
$wrappers = nullnull | arraynull to keep the current ones
$location = nullnull | SourceLocation
returnsstatica frame that will emit into its own rule

declare($property, $value, $location)

Frame.php:44

Add a declaration to this frame's rule, creating it on first use.

function declare( string $property, string $value, ?MMO\client\scs\SourceLocation $location = null ): void
$propertystring
$valuestring
$location = nullnull | SourceLocationwhere the declaration was written, for the source map
returnsvoid

__construct($emitter, $selectors, $wrappers, $order, $location)

Frame.php:20
function __construct( MMO\client\scs\Emitter $emitter, array $selectors = [], array $wrappers = [], int $order = 0, ?MMO\client\scs\SourceLocation $location = null )
$emitterEmitter
$selectors = []arraythe resolved selectors, empty at the root of the stylesheet
$wrappers = []arraythe at-rules currently wrapping the output
$order = 0intthe current @order priority
$location = nullnull | SourceLocation