PHP Класс Beans_Lessc, Beans

Converting LESS to CSS is a three stage process. The incoming file is parsed by lessc_parser into a syntax tree, then it is compiled into another tree representing the CSS structure by lessc. The CSS tree is fed into a formatter, like lessc_formatter which then outputs CSS as a string. During the first compile, all values are *reduced*, which means that their types are brought to the lowest form before being dump as strings. This handles math equations, variable dereferences, and the like. The parse function of lessc is the entry point. In summary: The lessc class creates an intstance of the parser, feeds it LESS code, then transforms the resulting tree to a CSS tree. This class also holds the evaluation context, such as all available mixins and variables at any given time. The lessc_parser class is only concerned with parsing its input. The lessc_formatter takes a CSS tree, and dumps it to a formatted string, handling things like indentation.
Показать файл Открыть проект Примеры использования класса

Открытые свойства

Свойство Тип Описание
$VERSION
$defaultValue
$importDir
$importDisabled
$mPrefix prefix of abstract properties
$parentSelector prefix of abstract blocks
$vPrefix

Защищенные свойства (Protected)

Свойство Тип Описание
$FALSE
$TRUE
$allParsedFiles
$cssColors
$libFunctions
$nextImportId
$numberPrecision
$preserveComments
$registeredVars
$sourceLoc
$sourceParser so we know how to create error messages

Открытые методы

Метод Описание
__construct ( $fname = null ) Initialize any static state, can initialize parser for a file $opts isn't used yet
addImportDir ( $dir )
allParsedFiles ( )
cachedCompile ( mixed $in, boolean $force = false ) : array Execute lessphp on a .less file or a lessphp cache structure
ccompile ( $in, $out, $less = null ) returns true when it compiles, false otherwise
cexecute ( $in, $force = false, $less = null )
checkedCompile ( $in, $out ) compile only if changed input has changed or output doesn't exist
compile ( $string, $name = null )
compileFile ( $fname, $outFname = null )
compressList ( $items, $delim )
lib_blue ( $color )
lib_green ( $color )
lib_red ( $color )
parse ( $str = null, $initialVariables = null ) This is deprecated
preg_quote ( $what )
registerFunction ( $name, $func )
setFormatter ( $name )
setImportDir ( $dirs )
setPreserveComments ( $preserve )
setVariables ( $variables )
unregisterFunction ( $name )
unsetVariable ( $name )

Защищенные методы

Метод Описание
addParsedFile ( $file )
assertArgs ( $value, $expectedArgs, $name = "" )
assertColor ( $value, $error = "expected color value" )
assertNumber ( $value, $error = "expecting number" )
clamp ( $v, $max = 1, $min )
coerceColor ( $value ) coerce a value for use in color operation
coerceString ( $value ) make something string like into a string
colorArgs ( $args ) Helper function to get arguments for color manipulation functions.
compileBlock ( $block ) Recursively compiles a block.
compileCSSBlock ( $block )
compileImportedProps ( $props, $block, $out, $sourceParser, $importDir )
compileMedia ( $media )
compileMediaQuery ( $queries )
compileNestedBlock ( $block, $selectors )
compileProp ( $prop, $block, $out ) compile a prop and update $lines or $blocks appropriately
compileProps ( $block, $out )
compileRoot ( $root )
compileSelectors ( $selectors ) reduces selector expressions
compileValue ( $value ) Compiles a primitive value into a CSS property value.
eq ( $left, $right )
evaluate ( $exp ) evaluate an expression
expandParentSelectors ( &$tag, $replace )
fileExists ( $name )
findBlocks ( $searchIn, $path, $orderedArgs, $keywordArgs, $seen = [] ) attempt to find blocks matched by path and args
findClosestSelectors ( )
findImport ( $url ) attempts to find the path of an import url, returns null for css files
fixColor ( $c ) make sure a color's components don't go out of bounds
flattenList ( $value ) turn list of length 1 into value type
funcToColor ( $func ) Convert the rgb, rgba, hsl color literals of function type as returned by the parser into values of color type.
get ( $name, $default = null ) get the highest occurrence entry for a name
injectVariables ( $args ) inject array of unparsed strings into environment as variables
lib__sprintf ( $args )
lib_acos ( $num )
lib_alpha ( $value ) defaults to 1 for non-colors or colors without an alpha
lib_argb ( $color )
lib_asin ( $num )
lib_atan ( $num )
lib_ceil ( $arg )
lib_contrast ( $args )
lib_cos ( $num )
lib_darken ( $args )
lib_desaturate ( $args )
lib_e ( ) use func_get_arg to prevent Theme Checker triggering unrelated translation warning.
lib_extract ( $value )
lib_fade ( $args ) set the alpha of the color
lib_fadein ( $args )
lib_fadeout ( $args )
lib_floor ( $arg )
lib_hue ( $color )
lib_iscolor ( $value )
lib_isem ( $value )
lib_iskeyword ( $value )
lib_isnumber ( $value )
lib_ispercentage ( $value )
lib_ispixel ( $value )
lib_isrem ( $value )
lib_isstring ( $value )
lib_lighten ( $args )
lib_lightness ( $color )
lib_mix ( $args ) http://sass-lang.com/docs/yardoc/Sass/Script/Functions.html#mix-instance_method
lib_mod ( $args )
lib_percentage ( $arg )
lib_pi ( )
lib_pow ( $args )
lib_rgbahex ( $color )
lib_round ( $arg )
lib_saturate ( $args )
lib_saturation ( $color )
lib_sin ( $num )
lib_spin ( $args )
lib_sqrt ( $num )
lib_tan ( $num )
lib_unit ( $arg )
lib_unquote ( $arg ) use func_get_arg to prevent Theme Checker triggering unrelated translation warning.
makeOutputBlock ( $type, $selectors = null ) * environment functions
makeParser ( $name )
mediaParent ( $scope )
multiplyMedia ( $env, $childQueries = null )
multiplySelectors ( $selectors ) multiply $selectors against the nearest selectors in env
newFormatter ( )
op_color_color ( $op, $left, $right )
op_color_number ( $op, $lft, $rgt )
op_number_color ( $op, $lft, $rgt )
op_number_number ( $op, $left, $right ) operator on two numbers
patternMatch ( $block, $orderedArgs, $keywordArgs )
patternMatchAll ( $blocks, $orderedArgs, $keywordArgs, $skip = [] )
popEnv ( ) pop something off the stack
pushEnv ( $block = null ) the state of execution
reduce ( $value, $forExpression = false )
set ( $name, $value ) set something in the current env
sortProps ( $props, $split = false )
stringConcatenate ( $left, $right )
throwError ( $msg = null ) Uses the current value of $this->count to show line and line number
toBool ( $a )
toHSL ( $color )
toRGB ( $color ) Converts a hsl array into a color value in rgb.
toRGB_helper ( $comp, $temp1, $temp2 )
tryImport ( $importPath, $parentBlock, $out )
zipSetArgs ( $args, $orderedValues, $keywordValues ) or the one passed in through $values

Описание методов

__construct() публичный Метод

Initialize any static state, can initialize parser for a file $opts isn't used yet
public __construct ( $fname = null )

addImportDir() публичный Метод

public addImportDir ( $dir )

addParsedFile() защищенный Метод

protected addParsedFile ( $file )

allParsedFiles() публичный Метод

public allParsedFiles ( )

assertArgs() защищенный Метод

protected assertArgs ( $value, $expectedArgs, $name = "" )

assertColor() защищенный Метод

protected assertColor ( $value, $error = "expected color value" )

assertNumber() защищенный Метод

protected assertNumber ( $value, $error = "expecting number" )

cachedCompile() публичный Метод

The lessphp cache structure contains information about a specific less file having been parsed. It can be used as a hint for future calls to determine whether or not a rebuild is required. The cache structure contains two important keys that may be used externally: compiled: The final compiled CSS updated: The time (in seconds) the CSS was last compiled The cache structure is a plain-ol' PHP associative array and can be serialized and unserialized without a hitch.
public cachedCompile ( mixed $in, boolean $force = false ) : array
$in mixed Input
$force boolean Force rebuild?
Результат array lessphp cache structure

ccompile() публичный статический Метод

returns true when it compiles, false otherwise
public static ccompile ( $in, $out, $less = null )

cexecute() публичный статический Метод

public static cexecute ( $in, $force = false, $less = null )

checkedCompile() публичный Метод

compile only if changed input has changed or output doesn't exist
public checkedCompile ( $in, $out )

clamp() защищенный Метод

protected clamp ( $v, $max = 1, $min )

coerceColor() защищенный Метод

coerce a value for use in color operation
protected coerceColor ( $value )

coerceString() защищенный Метод

make something string like into a string
protected coerceString ( $value )

colorArgs() защищенный Метод

takes a list that contains a color like thing and a percentage
protected colorArgs ( $args )

compile() публичный Метод

public compile ( $string, $name = null )

compileBlock() защищенный Метод

A block is analogous to a CSS block in most cases. A single LESS document is encapsulated in a block when parsed, but it does not have parent tags so all of it's children appear on the root level when compiled. Blocks are made up of props and children. Props are property instructions, array tuples which describe an action to be taken, eg. write a property, set a variable, mixin a block. The children of a block are just all the blocks that are defined within. This is used to look up mixins when performing a mixin. Compiling the block involves pushing a fresh environment on the stack, and iterating through the props, compiling each one. See lessc::compileProp()
protected compileBlock ( $block )

compileCSSBlock() защищенный Метод

protected compileCSSBlock ( $block )

compileFile() публичный Метод

public compileFile ( $fname, $outFname = null )

compileImportedProps() защищенный Метод

protected compileImportedProps ( $props, $block, $out, $sourceParser, $importDir )

compileMedia() защищенный Метод

protected compileMedia ( $media )

compileMediaQuery() защищенный Метод

protected compileMediaQuery ( $queries )

compileNestedBlock() защищенный Метод

protected compileNestedBlock ( $block, $selectors )

compileProp() защищенный Метод

compile a prop and update $lines or $blocks appropriately
protected compileProp ( $prop, $block, $out )

compileProps() защищенный Метод

protected compileProps ( $block, $out )

compileRoot() защищенный Метод

protected compileRoot ( $root )

compileSelectors() защищенный Метод

reduces selector expressions
protected compileSelectors ( $selectors )

compileValue() защищенный Метод

Values in lessphp are typed by being wrapped in arrays, their format is typically: array(type, contents [, additional_contents]*) The input is expected to be reduced. This function will not work on things like expressions and variables.
protected compileValue ( $value )

compressList() публичный статический Метод

public static compressList ( $items, $delim )

eq() защищенный Метод

protected eq ( $left, $right )

evaluate() защищенный Метод

evaluate an expression
protected evaluate ( $exp )

expandParentSelectors() защищенный Метод

protected expandParentSelectors ( &$tag, $replace )

fileExists() защищенный Метод

protected fileExists ( $name )

findBlocks() защищенный Метод

attempt to find blocks matched by path and args
protected findBlocks ( $searchIn, $path, $orderedArgs, $keywordArgs, $seen = [] )

findClosestSelectors() защищенный Метод

protected findClosestSelectors ( )

findImport() защищенный Метод

attempts to find the path of an import url, returns null for css files
protected findImport ( $url )

fixColor() защищенный Метод

make sure a color's components don't go out of bounds
protected fixColor ( $c )

flattenList() защищенный Метод

turn list of length 1 into value type
protected flattenList ( $value )

funcToColor() защищенный Метод

Convert the rgb, rgba, hsl color literals of function type as returned by the parser into values of color type.
protected funcToColor ( $func )

get() защищенный Метод

get the highest occurrence entry for a name
protected get ( $name, $default = null )

injectVariables() защищенный Метод

inject array of unparsed strings into environment as variables
protected injectVariables ( $args )

lib__sprintf() защищенный Метод

protected lib__sprintf ( $args )

lib_acos() защищенный Метод

protected lib_acos ( $num )

lib_alpha() защищенный Метод

defaults to 1 for non-colors or colors without an alpha
protected lib_alpha ( $value )

lib_argb() защищенный Метод

protected lib_argb ( $color )

lib_asin() защищенный Метод

protected lib_asin ( $num )

lib_atan() защищенный Метод

protected lib_atan ( $num )

lib_blue() публичный Метод

public lib_blue ( $color )

lib_ceil() защищенный Метод

protected lib_ceil ( $arg )

lib_contrast() защищенный Метод

protected lib_contrast ( $args )

lib_cos() защищенный Метод

protected lib_cos ( $num )

lib_darken() защищенный Метод

protected lib_darken ( $args )

lib_desaturate() защищенный Метод

protected lib_desaturate ( $args )

lib_e() защищенный Метод

use func_get_arg to prevent Theme Checker triggering unrelated translation warning.
protected lib_e ( )

lib_extract() защищенный Метод

protected lib_extract ( $value )

lib_fade() защищенный Метод

set the alpha of the color
protected lib_fade ( $args )

lib_fadein() защищенный Метод

protected lib_fadein ( $args )

lib_fadeout() защищенный Метод

protected lib_fadeout ( $args )

lib_floor() защищенный Метод

protected lib_floor ( $arg )

lib_green() публичный Метод

public lib_green ( $color )

lib_hue() защищенный Метод

protected lib_hue ( $color )

lib_iscolor() защищенный Метод

protected lib_iscolor ( $value )

lib_isem() защищенный Метод

protected lib_isem ( $value )

lib_iskeyword() защищенный Метод

protected lib_iskeyword ( $value )

lib_isnumber() защищенный Метод

protected lib_isnumber ( $value )

lib_ispercentage() защищенный Метод

protected lib_ispercentage ( $value )

lib_ispixel() защищенный Метод

protected lib_ispixel ( $value )

lib_isrem() защищенный Метод

protected lib_isrem ( $value )

lib_isstring() защищенный Метод

protected lib_isstring ( $value )

lib_lighten() защищенный Метод

protected lib_lighten ( $args )

lib_lightness() защищенный Метод

protected lib_lightness ( $color )

lib_mix() защищенный Метод

http://sass-lang.com/docs/yardoc/Sass/Script/Functions.html#mix-instance_method
protected lib_mix ( $args )

lib_mod() защищенный Метод

protected lib_mod ( $args )

lib_percentage() защищенный Метод

protected lib_percentage ( $arg )

lib_pi() защищенный Метод

protected lib_pi ( )

lib_pow() защищенный Метод

protected lib_pow ( $args )

lib_red() публичный Метод

public lib_red ( $color )

lib_rgbahex() защищенный Метод

protected lib_rgbahex ( $color )

lib_round() защищенный Метод

protected lib_round ( $arg )

lib_saturate() защищенный Метод

protected lib_saturate ( $args )

lib_saturation() защищенный Метод

protected lib_saturation ( $color )

lib_sin() защищенный Метод

protected lib_sin ( $num )

lib_spin() защищенный Метод

protected lib_spin ( $args )

lib_sqrt() защищенный Метод

protected lib_sqrt ( $num )

lib_tan() защищенный Метод

protected lib_tan ( $num )

lib_unit() защищенный Метод

protected lib_unit ( $arg )

lib_unquote() защищенный Метод

use func_get_arg to prevent Theme Checker triggering unrelated translation warning.
protected lib_unquote ( $arg )

makeOutputBlock() защищенный Метод

* environment functions
protected makeOutputBlock ( $type, $selectors = null )

makeParser() защищенный Метод

protected makeParser ( $name )

mediaParent() защищенный Метод

protected mediaParent ( $scope )

multiplyMedia() защищенный Метод

protected multiplyMedia ( $env, $childQueries = null )

multiplySelectors() защищенный Метод

multiply $selectors against the nearest selectors in env
protected multiplySelectors ( $selectors )

newFormatter() защищенный Метод

protected newFormatter ( )

op_color_color() защищенный Метод

protected op_color_color ( $op, $left, $right )

op_color_number() защищенный Метод

protected op_color_number ( $op, $lft, $rgt )

op_number_color() защищенный Метод

protected op_number_color ( $op, $lft, $rgt )

op_number_number() защищенный Метод

operator on two numbers
protected op_number_number ( $op, $left, $right )

parse() публичный Метод

This is deprecated
public parse ( $str = null, $initialVariables = null )

patternMatch() защищенный Метод

protected patternMatch ( $block, $orderedArgs, $keywordArgs )

patternMatchAll() защищенный Метод

protected patternMatchAll ( $blocks, $orderedArgs, $keywordArgs, $skip = [] )

popEnv() защищенный Метод

pop something off the stack
protected popEnv ( )

preg_quote() публичный статический Метод

public static preg_quote ( $what )

pushEnv() защищенный Метод

the state of execution
protected pushEnv ( $block = null )

reduce() защищенный Метод

protected reduce ( $value, $forExpression = false )

registerFunction() публичный Метод

public registerFunction ( $name, $func )

set() защищенный Метод

set something in the current env
protected set ( $name, $value )

setFormatter() публичный Метод

public setFormatter ( $name )

setImportDir() публичный Метод

public setImportDir ( $dirs )

setPreserveComments() публичный Метод

public setPreserveComments ( $preserve )

setVariables() публичный Метод

public setVariables ( $variables )

sortProps() защищенный Метод

protected sortProps ( $props, $split = false )

stringConcatenate() защищенный Метод

protected stringConcatenate ( $left, $right )

throwError() защищенный Метод

Uses the current value of $this->count to show line and line number
protected throwError ( $msg = null )

toBool() защищенный Метод

protected toBool ( $a )

toHSL() защищенный Метод

protected toHSL ( $color )

toRGB() защищенный Метод

Expects H to be in range of 0 to 360, S and L in 0 to 100
protected toRGB ( $color )

toRGB_helper() защищенный Метод

protected toRGB_helper ( $comp, $temp1, $temp2 )

tryImport() защищенный Метод

protected tryImport ( $importPath, $parentBlock, $out )

unregisterFunction() публичный Метод

public unregisterFunction ( $name )

unsetVariable() публичный Метод

public unsetVariable ( $name )

zipSetArgs() защищенный Метод

or the one passed in through $values
protected zipSetArgs ( $args, $orderedValues, $keywordValues )

Описание свойств

$FALSE защищенное статическое свойство

protected static $FALSE

$TRUE защищенное статическое свойство

protected static $TRUE

$VERSION публичное статическое свойство

public static $VERSION

$allParsedFiles защищенное свойство

protected $allParsedFiles

$cssColors защищенное статическое свойство

protected static $cssColors

$defaultValue публичное статическое свойство

public static $defaultValue

$importDir публичное свойство

public $importDir

$importDisabled публичное свойство

public $importDisabled

$libFunctions защищенное свойство

protected $libFunctions

$mPrefix публичное свойство

prefix of abstract properties
public $mPrefix

$nextImportId защищенное статическое свойство

protected static $nextImportId

$numberPrecision защищенное свойство

protected $numberPrecision

$parentSelector публичное свойство

prefix of abstract blocks
public $parentSelector

$preserveComments защищенное свойство

protected $preserveComments

$registeredVars защищенное свойство

protected $registeredVars

$sourceLoc защищенное свойство

protected $sourceLoc

$sourceParser защищенное свойство

so we know how to create error messages
protected $sourceParser

$vPrefix публичное свойство

public $vPrefix