Joomla CMS  3.10.11 (avec JPlatform 13.1 inclus)
Documentation des API du CMS Joomla en version 3.10.11 et du framework Joomla Platform intégré
Référence de la classe lessc
+ Graphe d'héritage de lessc:

Fonctions membres publiques

 compileValue ($value)
 
 colorArgs ($args)
 
 assertColor ($value, $error="expected color value")
 
 assertNumber ($value, $error="expecting number")
 
 assertArgs ($value, $expectedArgs, $name="")
 
 toBool ($a)
 
 lib_red ($color)
 
 lib_green ($color)
 
 lib_blue ($color)
 
 __construct ($fname=null)
 
 compile ($string, $name=null)
 
 compileFile ($fname, $outFname=null)
 
 checkedCompile ($in, $out)
 
 cachedCompile ($in, $force=false)
 
 parse ($str=null, $initialVariables=null)
 
 setFormatter ($name)
 
 setPreserveComments ($preserve)
 
 registerFunction ($name, $func)
 
 unregisterFunction ($name)
 
 setVariables ($variables)
 
 unsetVariable ($name)
 
 setImportDir ($dirs)
 
 addImportDir ($dir)
 
 allParsedFiles ()
 
 addParsedFile ($file)
 
 throwError ($msg=null)
 

Fonctions membres publiques statiques

static compressList ($items, $delim)
 
static preg_quote ($what)
 
static ccompile ($in, $out, $less=null)
 
static cexecute ($in, $force=false, $less=null)
 

Champs de données

 $vPrefix = '@'
 
 $mPrefix = '$'
 
 $parentSelector = '&'
 
 $importDisabled = false
 
 $importDir = ''
 

Attributs publics statiques

static $VERSION = "v0.5.0"
 
static $TRUE = array("keyword", "true")
 
static $FALSE = array("keyword", "false")
 

Fonctions membres protégées

 findImport ($url)
 
 fileExists ($name)
 
 tryImport ($importPath, $parentBlock, $out)
 
 compileImportedProps ($props, $block, $out, $sourceParser, $importDir)
 
 compileBlock ($block)
 
 compileCSSBlock ($block)
 
 compileMedia ($media)
 
 mediaParent ($scope)
 
 compileNestedBlock ($block, $selectors)
 
 compileRoot ($root)
 
 compileProps ($block, $out)
 
 deduplicate ($lines)
 
 sortProps ($props, $split=false)
 
 compileMediaQuery ($queries)
 
 multiplyMedia ($env, $childQueries=null)
 
 expandParentSelectors (&$tag, $replace)
 
 findClosestSelectors ()
 
 multiplySelectors ($selectors)
 
 compileSelectors ($selectors)
 
 eq ($left, $right)
 
 patternMatch ($block, $orderedArgs, $keywordArgs)
 
 patternMatchAll ($blocks, $orderedArgs, $keywordArgs, $skip=array())
 
 findBlocks ($searchIn, $path, $orderedArgs, $keywordArgs, $seen=array())
 
 zipSetArgs ($args, $orderedValues, $keywordValues)
 
 compileProp ($prop, $block, $out)
 
 lib_pow ($args)
 
 lib_pi ()
 
 lib_mod ($args)
 
 lib_tan ($num)
 
 lib_sin ($num)
 
 lib_cos ($num)
 
 lib_atan ($num)
 
 lib_asin ($num)
 
 lib_acos ($num)
 
 lib_sqrt ($num)
 
 lib_extract ($value)
 
 lib_isnumber ($value)
 
 lib_isstring ($value)
 
 lib_iscolor ($value)
 
 lib_iskeyword ($value)
 
 lib_ispixel ($value)
 
 lib_ispercentage ($value)
 
 lib_isem ($value)
 
 lib_isrem ($value)
 
 lib_rgbahex ($color)
 
 lib_argb ($color)
 
 lib_data_uri ($value)
 
 lib_e ($arg)
 
 lib__sprintf ($args)
 
 lib_floor ($arg)
 
 lib_ceil ($arg)
 
 lib_round ($arg)
 
 lib_unit ($arg)
 
 lib_darken ($args)
 
 lib_lighten ($args)
 
 lib_saturate ($args)
 
 lib_desaturate ($args)
 
 lib_spin ($args)
 
 lib_fadeout ($args)
 
 lib_fadein ($args)
 
 lib_hue ($color)
 
 lib_saturation ($color)
 
 lib_lightness ($color)
 
 lib_alpha ($value)
 
 lib_fade ($args)
 
 lib_percentage ($arg)
 
 lib_tint ($args)
 
 lib_shade ($args)
 
 lib_mix ($args)
 
 lib_contrast ($args)
 
 lib_luma ($color)
 
 toHSL ($color)
 
 toRGB_helper ($comp, $temp1, $temp2)
 
 toRGB ($color)
 
 clamp ($v, $max=1, $min=0)
 
 funcToColor ($func)
 
 reduce ($value, $forExpression=false)
 
 coerceColor ($value)
 
 coerceString ($value)
 
 flattenList ($value)
 
 evaluate ($exp)
 
 stringConcatenate ($left, $right)
 
 fixColor ($c)
 
 op_number_color ($op, $lft, $rgt)
 
 op_color_number ($op, $lft, $rgt)
 
 op_color_color ($op, $left, $right)
 
 op_number_number ($op, $left, $right)
 
 makeOutputBlock ($type, $selectors=null)
 
 pushEnv ($block=null)
 
 popEnv ()
 
 set ($name, $value)
 
 get ($name)
 
 injectVariables ($args)
 
 makeParser ($name)
 
 newFormatter ()
 

Attributs protégés

 $libFunctions = array()
 
 $registeredVars = array()
 
 $preserveComments = false
 
 $numberPrecision = null
 
 $allParsedFiles = array()
 
 $sourceParser = null
 
 $sourceLoc = null
 

Attributs protégés statiques

static $nextImportId = 0
 
static $cssColors
 

Fonctions membres privées

 toLuma ($color)
 

Description détaillée

lessphp v0.5.0 http://leafo.net/lessphp

LESS CSS compiler, adapted from http://lesscss.org

Copyright 2013, Leaf Corcoran leafo.nosp@m.t@gm.nosp@m.ail.c.nosp@m.om Licensed under MIT or GPLv3, see LICENSE The LESS compiler and parser.

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 instance 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.

Documentation des constructeurs et destructeur

◆ __construct()

__construct (   $fname = null)

Initialize any static state, can initialize parser for a file $opts isn't used yet

Références null.

Documentation des fonctions membres

◆ addImportDir()

addImportDir (   $dir)

◆ addParsedFile()

addParsedFile (   $file)

Références $file, et allParsedFiles().

Référencé par compileFile(), et tryImport().

◆ allParsedFiles()

allParsedFiles ( )

Références $allParsedFiles.

Référencé par addParsedFile(), cachedCompile(), et tryImport().

◆ assertArgs()

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

Références $name, $value, et throwError().

Référencé par lib_extract(), lib_mod(), et lib_pow().

◆ assertColor()

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

◆ assertNumber()

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

◆ cachedCompile()

cachedCompile (   $in,
  $force = false 
)

Execute lessphp on a .less file or a lessphp cache structure

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.

Paramètres
mixed$inInput
bool$forceForce rebuild?
Renvoie
array lessphp cache structure

Références $root, allParsedFiles(), compileFile(), elseif, et null.

◆ ccompile()

static ccompile (   $in,
  $out,
  $less = null 
)
static

Références null.

◆ cexecute()

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

Références null.

◆ checkedCompile()

checkedCompile (   $in,
  $out 
)

Références compileFile().

◆ clamp()

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

◆ coerceColor()

◆ coerceString()

coerceString (   $value)
protected

Références $value, et null.

Référencé par stringConcatenate(), et tryImport().

◆ colorArgs()

colorArgs (   $args)

Helper function to get arguments for color manipulation functions. takes a list that contains a color like thing and a percentage

Références $color, et assertColor().

Référencé par lib_darken(), lib_desaturate(), lib_fade(), lib_fadein(), lib_fadeout(), lib_lighten(), lib_saturate(), et lib_spin().

◆ compile()

compile (   $string,
  $name = null 
)

◆ compileBlock()

compileBlock (   $block)
protected

Recursively compiles a block.

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()

Références $name, compileCSSBlock(), compileMedia(), compileNestedBlock(), compileRoot(), compileValue(), null, reduce(), et throwError().

Référencé par compile(), et compileProp().

◆ compileCSSBlock()

compileCSSBlock (   $block)
protected

◆ compileFile()

compileFile (   $fname,
  $outFname = null 
)

Références $importDir, addParsedFile(), compile(), et null.

Référencé par cachedCompile(), checkedCompile(), et parse().

◆ compileImportedProps()

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

Références $importDir, $sourceParser, et compileProp().

Référencé par compileProp(), et tryImport().

◆ compileMedia()

◆ compileMediaQuery()

compileMediaQuery (   $queries)
protected

Références $parts, $query, compileValue(), et reduce().

Référencé par compileMedia().

◆ compileNestedBlock()

compileNestedBlock (   $block,
  $selectors 
)
protected

Références compileProps(), makeOutputBlock(), popEnv(), et pushEnv().

Référencé par compileBlock().

◆ compileProp()

◆ compileProps()

compileProps (   $block,
  $out 
)
protected

◆ compileRoot()

compileRoot (   $root)
protected

Références $root, compileProps(), makeOutputBlock(), popEnv(), et pushEnv().

Référencé par compileBlock().

◆ compileSelectors()

compileSelectors (   $selectors)
protected

Références $value, compileValue(), et reduce().

Référencé par compileCSSBlock().

◆ compileValue()

compileValue (   $value)

Compiles a primitive value into a CSS property value.

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.

Références $b, $content, $g, $name, $r, $value, coerceColor(), null, et throwError().

Référencé par compileBlock(), compileMediaQuery(), compileProp(), compileSelectors(), lib__sprintf(), lib_e(), lib_unit(), reduce(), et tryImport().

◆ compressList()

static compressList (   $items,
  $delim 
)
static

◆ deduplicate()

deduplicate (   $lines)
protected

Deduplicate lines in a block. Comments are not deduplicated. If a duplicate rule is detected, the comments immediately preceding each occurence are consolidated.

Référencé par compileProps().

◆ eq()

eq (   $left,
  $right 
)
protected

Référencé par evaluate(), et patternMatch().

◆ evaluate()

evaluate (   $exp)
protected

Références coerceColor(), eq(), reduce(), stringConcatenate(), et toBool().

Référencé par reduce().

◆ expandParentSelectors()

expandParentSelectors ( $tag,
  $replace 
)
protected

Références $count, et $parts.

Référencé par multiplySelectors().

◆ fileExists()

fileExists (   $name)
protected

Références $name.

Référencé par findImport().

◆ findBlocks()

findBlocks (   $searchIn,
  $path,
  $orderedArgs,
  $keywordArgs,
  $seen = array() 
)
protected

Références $name, $path, null, et patternMatchAll().

Référencé par compileProp().

◆ findClosestSelectors()

findClosestSelectors ( )
protected

Références null.

Référencé par compileMedia(), et multiplySelectors().

◆ findImport()

findImport (   $url)
protected

Références $file, $url, fileExists(), et null.

Référencé par lib_data_uri(), et tryImport().

◆ fixColor()

fixColor (   $c)
protected

Références $i.

Référencé par funcToColor(), lib_mix(), et op_color_color().

◆ flattenList()

flattenList (   $value)
protected

Références $value.

Référencé par tryImport().

◆ funcToColor()

funcToColor (   $func)
protected

Convert the rgb, rgba, hsl color literals of function type as returned by the parser into values of color type.

Références $i, clamp(), elseif, fixColor(), reduce(), et toRGB().

Référencé par reduce().

◆ get()

get (   $name)
protected

Références $current, $name, et throwError().

◆ injectVariables()

injectVariables (   $args)
protected

Références $name, $value, et pushEnv().

Référencé par compile().

◆ lib__sprintf()

lib__sprintf (   $args)
protected

◆ lib_acos()

lib_acos (   $num)
protected

Références assertNumber().

◆ lib_alpha()

lib_alpha (   $value)
protected

Références $color, $value, et coerceColor().

Référencé par lib_contrast(), et lib_mix().

◆ lib_argb()

lib_argb (   $color)
protected

Références $color, et lib_rgbahex().

◆ lib_asin()

lib_asin (   $num)
protected

Références assertNumber().

◆ lib_atan()

lib_atan (   $num)
protected

Références assertNumber().

◆ lib_blue()

lib_blue (   $color)

Références $color, coerceColor(), et throwError().

◆ lib_ceil()

lib_ceil (   $arg)
protected

Références $value, et assertNumber().

◆ lib_contrast()

lib_contrast (   $args)
protected

◆ lib_cos()

lib_cos (   $num)
protected

Références assertNumber().

◆ lib_darken()

lib_darken (   $args)
protected

Références $color, clamp(), colorArgs(), toHSL(), et toRGB().

◆ lib_data_uri()

lib_data_uri (   $value)
protected

Given an url, decide whether to output a regular link or the base64-encoded contents of the file

Paramètres
array$valueeither an argument list (two strings) or a single string
Renvoie
string formatted url(), either as a link or base64-encoded

Références $mime, $url, $value, elseif, findImport(), et null.

◆ lib_desaturate()

lib_desaturate (   $args)
protected

Références $color, clamp(), colorArgs(), toHSL(), et toRGB().

◆ lib_e()

lib_e (   $arg)
protected

Références $items, compileValue(), et throwError().

Référencé par lib__sprintf(), lib_unit(), reduce(), et tryImport().

◆ lib_extract()

lib_extract (   $value)
protected

Références $list, $value, assertArgs(), et assertNumber().

◆ lib_fade()

lib_fade (   $args)
protected

Références $color, clamp(), et colorArgs().

◆ lib_fadein()

lib_fadein (   $args)
protected

Références $color, clamp(), et colorArgs().

◆ lib_fadeout()

lib_fadeout (   $args)
protected

Références $color, clamp(), et colorArgs().

◆ lib_floor()

lib_floor (   $arg)
protected

Références $value, et assertNumber().

◆ lib_green()

lib_green (   $color)

Références $color, coerceColor(), et throwError().

◆ lib_hue()

lib_hue (   $color)
protected

Références $color, assertColor(), et toHSL().

◆ lib_iscolor()

lib_iscolor (   $value)
protected

Références $value, coerceColor(), et toBool().

◆ lib_isem()

lib_isem (   $value)
protected

Références $value, et toBool().

◆ lib_iskeyword()

lib_iskeyword (   $value)
protected

Références $value, et toBool().

◆ lib_isnumber()

lib_isnumber (   $value)
protected

Références $value, et toBool().

◆ lib_ispercentage()

lib_ispercentage (   $value)
protected

Références $value, et toBool().

◆ lib_ispixel()

lib_ispixel (   $value)
protected

Références $value, et toBool().

◆ lib_isrem()

lib_isrem (   $value)
protected

Références $value, et toBool().

◆ lib_isstring()

lib_isstring (   $value)
protected

Références $value, et toBool().

◆ lib_lighten()

lib_lighten (   $args)
protected

Références $color, clamp(), colorArgs(), toHSL(), et toRGB().

◆ lib_lightness()

lib_lightness (   $color)
protected

Références $color, assertColor(), et toHSL().

◆ lib_luma()

lib_luma (   $color)
protected

Références $color, et toLuma().

◆ lib_mix()

lib_mix (   $args)
protected

Références assertColor(), fixColor(), lib_alpha(), et throwError().

Référencé par lib_shade(), et lib_tint().

◆ lib_mod()

lib_mod (   $args)
protected

Références $b, assertArgs(), et assertNumber().

◆ lib_percentage()

lib_percentage (   $arg)
protected

Références assertNumber().

◆ lib_pi()

lib_pi ( )
protected

◆ lib_pow()

lib_pow (   $args)
protected

Références $base, assertArgs(), et assertNumber().

◆ lib_red()

lib_red (   $color)

Références $color, coerceColor(), et throwError().

◆ lib_rgbahex()

lib_rgbahex (   $color)
protected

Références $color, coerceColor(), et throwError().

Référencé par lib_argb().

◆ lib_round()

lib_round (   $arg)
protected

Références $value, et assertNumber().

◆ lib_saturate()

lib_saturate (   $args)
protected

Références $color, clamp(), colorArgs(), toHSL(), et toRGB().

◆ lib_saturation()

lib_saturation (   $color)
protected

Références $color, assertColor(), et toHSL().

◆ lib_shade()

lib_shade (   $args)
protected

Mix color with black in variable proportion.

It is the same as calling mix(#000000, @color, @weight)

shade(@color, [@weight: 50%]);

http://lesscss.org/functions/#color-operations-shade

Renvoie
array Color

Références elseif, lib_mix(), et throwError().

◆ lib_sin()

lib_sin (   $num)
protected

Références assertNumber().

◆ lib_spin()

lib_spin (   $args)
protected

Références $color, colorArgs(), toHSL(), et toRGB().

◆ lib_sqrt()

lib_sqrt (   $num)
protected

Références assertNumber().

◆ lib_tan()

lib_tan (   $num)
protected

Références assertNumber().

◆ lib_tint()

lib_tint (   $args)
protected

Mix color with white in variable proportion.

It is the same as calling mix(#ffffff, @color, @weight).

tint(@color, [@weight: 50%]);

http://lesscss.org/functions/#color-operations-tint

Renvoie
array Color

Références elseif, lib_mix(), et throwError().

◆ lib_unit()

lib_unit (   $arg)
protected

◆ makeOutputBlock()

makeOutputBlock (   $type,
  $selectors = null 
)
protected

Références $b, et $type.

Référencé par compileCSSBlock(), compileMedia(), compileNestedBlock(), et compileRoot().

◆ makeParser()

makeParser (   $name)
protected

Références $name, et $preserveComments.

Référencé par compile(), et tryImport().

◆ mediaParent()

mediaParent (   $scope)
protected

Référencé par compileMedia().

◆ multiplyMedia()

multiplyMedia (   $env,
  $childQueries = null 
)
protected

Référencé par compileMedia().

◆ multiplySelectors()

multiplySelectors (   $selectors)
protected

◆ newFormatter()

newFormatter ( )
protected

Références $className.

Référencé par compile().

◆ op_color_color()

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

Références $i, fixColor(), et throwError().

Référencé par op_color_number().

◆ op_color_number()

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

Références op_color_color().

Référencé par op_number_color().

◆ op_number_color()

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

Références op_color_number().

◆ op_number_number()

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

Références $value, throwError(), et toBool().

◆ parse()

parse (   $str = null,
  $initialVariables = null 
)

◆ patternMatch()

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

Références $i, eq(), popEnv(), pushEnv(), reduce(), et zipSetArgs().

Référencé par patternMatchAll().

◆ patternMatchAll()

patternMatchAll (   $blocks,
  $orderedArgs,
  $keywordArgs,
  $skip = array() 
)
protected

Références null, et patternMatch().

Référencé par findBlocks().

◆ popEnv()

◆ preg_quote()

static preg_quote (   $what)
static

◆ pushEnv()

◆ reduce()

◆ registerFunction()

registerFunction (   $name,
  $func 
)

Références $name.

◆ set()

set (   $name,
  $value 
)
protected

Références $name, et $value.

◆ setFormatter()

setFormatter (   $name)

Références $name.

Référencé par TemplatesModelTemplate\compileLess().

◆ setImportDir()

setImportDir (   $dirs)

◆ setPreserveComments()

setPreserveComments (   $preserve)

◆ setVariables()

setVariables (   $variables)

Référencé par parse().

◆ sortProps()

sortProps (   $props,
  $split = false 
)
protected

Références $id.

Référencé par compileProp(), compileProps(), et tryImport().

◆ stringConcatenate()

stringConcatenate (   $left,
  $right 
)
protected

Références coerceString().

Référencé par evaluate().

◆ throwError()

throwError (   $msg = null)

◆ toBool()

◆ toHSL()

toHSL (   $color)
protected

◆ toLuma()

toLuma (   $color)
private

Références $b, $color, $g, $r, et coerceColor().

Référencé par lib_contrast(), et lib_luma().

◆ toRGB()

toRGB (   $color)
protected

Converts a hsl array into a color value in rgb. Expects H to be in range of 0 to 360, S and L in 0 to 100

Références $b, $color, $g, $r, et toRGB_helper().

Référencé par funcToColor(), lib_darken(), lib_desaturate(), lib_lighten(), lib_saturate(), et lib_spin().

◆ toRGB_helper()

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

Références elseif.

Référencé par toRGB().

◆ tryImport()

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

◆ unregisterFunction()

unregisterFunction (   $name)

Références $name.

◆ unsetVariable()

unsetVariable (   $name)

Références $name.

◆ zipSetArgs()

zipSetArgs (   $args,
  $orderedValues,
  $keywordValues 
)
protected

Références $i, $value, elseif, null, reduce(), et throwError().

Référencé par compileProp(), et patternMatch().

Documentation des champs

◆ $allParsedFiles

$allParsedFiles = array()
protected

Référencé par allParsedFiles().

◆ $cssColors

$cssColors
staticprotected

◆ $FALSE

$FALSE = array("keyword", "false")
static

◆ $importDir

$importDir = ''

◆ $importDisabled

$importDisabled = false

◆ $libFunctions

$libFunctions = array()
protected

◆ $mPrefix

$mPrefix = '$'

◆ $nextImportId

$nextImportId = 0
staticprotected

◆ $numberPrecision

$numberPrecision = null
protected

◆ $parentSelector

$parentSelector = '&'

◆ $preserveComments

$preserveComments = false
protected

Référencé par makeParser().

◆ $registeredVars

$registeredVars = array()
protected

Référencé par parse().

◆ $sourceLoc

$sourceLoc = null
protected

◆ $sourceParser

$sourceParser = null
protected

Référencé par compileImportedProps().

◆ $TRUE

$TRUE = array("keyword", "true")
static

◆ $VERSION

$VERSION = "v0.5.0"
static

◆ $vPrefix

$vPrefix = '@'

La documentation de cette classe a été générée à partir du fichier suivant :