mirror of
https://github.com/less/less.js.git
synced 2026-04-09 03:00:20 -04:00
make import visitor stack up frame scopes
This commit is contained in:
@@ -24,6 +24,35 @@
|
||||
visitRule: function (ruleNode, visitArgs) {
|
||||
visitArgs.visitDeeper = false;
|
||||
return ruleNode;
|
||||
},
|
||||
visitDirective: function (directiveNode, visitArgs) {
|
||||
this.env.frames.unshift(directiveNode);
|
||||
return directiveNode;
|
||||
},
|
||||
visitDirectiveOut: function (directiveNode) {
|
||||
this.env.frames.shift();
|
||||
},
|
||||
visitMixinDefinition: function (mixinDefinitionNode, visitArgs) {
|
||||
this.env.frames.unshift(mixinDefinitionNode);
|
||||
return mixinDefinitionNode;
|
||||
},
|
||||
visitMixinDefinitionOut: function (mixinDefinitionNode) {
|
||||
this.env.frames.shift();
|
||||
},
|
||||
visitRulesetDefinition: function (rulesetNode, visitArgs) {
|
||||
this.env.frames.unshift(rulesetNode);
|
||||
return rulesetNode;
|
||||
},
|
||||
visitRulesetDefinitionOut: function (rulesetNode) {
|
||||
this.env.frames.shift();
|
||||
},
|
||||
visitMedia: function (mediaNode, visitArgs) {
|
||||
this.env.frames.unshift(mediaNode.ruleset);
|
||||
return mediaNode;
|
||||
},
|
||||
visitMediaOut: function (mediaNode) {
|
||||
this.env.frames.shift();
|
||||
}
|
||||
};
|
||||
|
||||
})(require('./tree'));
|
||||
@@ -25,6 +25,10 @@
|
||||
if ((!visitArgs || visitArgs.visitDeeper) && node && node.accept) {
|
||||
node.accept(this);
|
||||
}
|
||||
funcName = funcName + "Out";
|
||||
if (this._implementation[funcName]) {
|
||||
this._implementation[funcName](node);
|
||||
}
|
||||
return node;
|
||||
},
|
||||
visitArray: function(nodes) {
|
||||
|
||||
Reference in New Issue
Block a user