diff options
Diffstat (limited to '')
| -rw-r--r-- | lib/less.php/Visitor/extendFinder.php | 114 | 
1 files changed, 0 insertions, 114 deletions
diff --git a/lib/less.php/Visitor/extendFinder.php b/lib/less.php/Visitor/extendFinder.php deleted file mode 100644 index 22b3aac..0000000 --- a/lib/less.php/Visitor/extendFinder.php +++ /dev/null @@ -1,114 +0,0 @@ -<?php - -/** - * Extend Finder Visitor - * - * @package Less - * @subpackage visitor - */ -class Less_Visitor_extendFinder extends Less_Visitor{ - -	public $contexts = array(); -	public $allExtendsStack; -	public $foundExtends; - -	public function __construct(){ -		$this->contexts = array(); -		$this->allExtendsStack = array(array()); -		parent::__construct(); -	} - -	/** -	 * @param Less_Tree_Ruleset $root -	 */ -    public function run($root){ -		$root = $this->visitObj($root); -		$root->allExtends =& $this->allExtendsStack[0]; -		return $root; -	} - -    public function visitRule($ruleNode, &$visitDeeper ){ -		$visitDeeper = false; -	} - -    public function visitMixinDefinition( $mixinDefinitionNode, &$visitDeeper ){ -		$visitDeeper = false; -	} - -    public function visitRuleset($rulesetNode){ - -		if( $rulesetNode->root ){ -			return; -		} - -		$allSelectorsExtendList = array(); - -		// get &:extend(.a); rules which apply to all selectors in this ruleset -		if( $rulesetNode->rules ){ -			foreach($rulesetNode->rules as $rule){ -				if( $rule instanceof Less_Tree_Extend ){ -					$allSelectorsExtendList[] = $rule; -					$rulesetNode->extendOnEveryPath = true; -				} -			} -		} - - -		// now find every selector and apply the extends that apply to all extends -		// and the ones which apply to an individual extend -		foreach($rulesetNode->paths as $selectorPath){ -			$selector = end($selectorPath); //$selectorPath[ count($selectorPath)-1]; - -			$j = 0; -			foreach($selector->extendList as $extend){ -				$this->allExtendsStackPush($rulesetNode, $selectorPath, $extend, $j); -			} -			foreach($allSelectorsExtendList as $extend){ -				$this->allExtendsStackPush($rulesetNode, $selectorPath, $extend, $j); -			} -		} - -		$this->contexts[] = $rulesetNode->selectors; -	} - -    public function allExtendsStackPush($rulesetNode, $selectorPath, $extend, &$j){ -		$this->foundExtends = true; -		$extend = clone $extend; -		$extend->findSelfSelectors( $selectorPath ); -		$extend->ruleset = $rulesetNode; -		if( $j === 0 ){ -			$extend->firstExtendOnThisSelectorPath = true; -		} - -		$end_key = count($this->allExtendsStack)-1; -		$this->allExtendsStack[$end_key][] = $extend; -		$j++; -	} - - -    public function visitRulesetOut( $rulesetNode ){ -		if( !is_object($rulesetNode) || !$rulesetNode->root ){ -			array_pop($this->contexts); -		} -	} - -    public function visitMedia( $mediaNode ){ -		$mediaNode->allExtends = array(); -		$this->allExtendsStack[] =& $mediaNode->allExtends; -	} - -    public function visitMediaOut(){ -		array_pop($this->allExtendsStack); -	} - -    public function visitDirective( $directiveNode ){ -		$directiveNode->allExtends = array(); -		$this->allExtendsStack[] =& $directiveNode->allExtends; -	} - -    public function visitDirectiveOut(){ -		array_pop($this->allExtendsStack); -	} -} - -  | 
