1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
<?php
/**
* A simple CSS name-value pair, e.g. `width: 100px;`
*
* In bootstrap, there are about 600-1000 simple name-value pairs (depending on
* how forgiving the match is) -vs- 6,020 dynamic rules (Less_Tree_Declaration).
*
* Using the name-value object can speed up bootstrap compilation slightly, but
* it breaks color keyword interpretation: `color: red` -> `color: #FF0000`.
*
* @private
*/
class Less_Tree_NameValue extends Less_Tree implements Less_Tree_HasValueProperty {
public $name;
public $value;
public $index;
public $currentFileInfo;
public $important = '';
public function __construct( $name, $value = null, $index = null, $currentFileInfo = null ) {
$this->name = $name;
$this->value = $value;
$this->index = $index;
$this->currentFileInfo = $currentFileInfo;
}
public function genCSS( $output ) {
$output->add(
$this->name
. ( Less_Parser::$options['compress'] ? ':' : ': ' )
. $this->value
. $this->important
. ( ( ( Less_Environment::$lastRule && Less_Parser::$options['compress'] ) ) ? "" : ";" ),
$this->currentFileInfo, $this->index );
}
public function compile( $env ) {
return $this;
}
public function makeImportant() {
$new = new self( $this->name, $this->value, $this->index, $this->currentFileInfo );
$new->important = ' !important';
return $new;
}
}
|