public function SassRuleNode::resolveSelectors in Sassy 7.3
Same name and namespace in other branches
- 7 phamlp/sass/tree/SassRuleNode.php \SassRuleNode::resolveSelectors()
Resolves selectors. Interpolates SassScript in selectors and resolves any parent references or appends the parent selectors.
Parameters
SassContext the context in which this node is parsed:
1 call to SassRuleNode::resolveSelectors()
- SassRuleNode::parse in phpsass/
tree/ SassRuleNode.php - Parse this node and its children into static nodes.
File
- phpsass/
tree/ SassRuleNode.php, line 212
Class
- SassRuleNode
- SassRuleNode class. Represents a CSS rule. @package PHamlP @subpackage Sass.tree
Code
public function resolveSelectors($context) {
$resolvedSelectors = array();
$this->parentSelectors = $this
->getParentSelectors($context);
foreach ($this->selectors as $key => $selector) {
$selector = $this
->interpolate($selector, $context);
//$selector = $this->evaluate($this->interpolate($selector, $context), $context)->toString();
if ($this
->hasParentReference($selector)) {
$resolvedSelectors = array_merge($resolvedSelectors, $this
->resolveParentReferences($selector, $context));
}
elseif ($this->parentSelectors) {
foreach ($this->parentSelectors as $parentSelector) {
$resolvedSelectors[] = "{$parentSelector} {$selector}";
}
// foreach
}
else {
$resolvedSelectors[] = $selector;
}
}
// foreach
sort($resolvedSelectors);
return $resolvedSelectors;
}