Merge pull request #2497 from calvinjuarez/ruleset-as-default-arg

Allow detached rulesets as mixin argument defaults
This commit is contained in:
Luke Page
2015-03-11 06:03:30 +00:00
5 changed files with 15 additions and 13 deletions

View File

@@ -704,10 +704,7 @@ var Parser = function Parser(context, imports, fileInfo) {
expressionContainsNamed = true;
}
// we do not support setting a ruleset as a default variable - it doesn't make sense
// However if we do want to add it, there is nothing blocking it, just don't error
// and remove isCall dependency below
value = (isCall && parsers.detachedRuleset()) || parsers.expression();
value = parsers.detachedRuleset() || parsers.expression();
if (!value) {
if (isCall) {

View File

@@ -69,3 +69,8 @@ html.lt-ie9 header {
.a {
test: test;
}
.argument-default {
default: works;
direct: works;
named: works;
}

View File

@@ -100,4 +100,13 @@ header {
@my-mixins();
.a {
.mixin();
}
// as mixin argument default
.mixin-definition(@a: {}; @b: {default: works;};) {
@a();
@b();
}
.argument-default {
.mixin-definition();
.mixin-definition({direct: works;}; @b: {named: works;});
}

View File

@@ -1,5 +0,0 @@
.mixin-definition(@a: {
b: 1;
}) {
@a();
}

View File

@@ -1,4 +0,0 @@
ParseError: Unrecognised input in {path}detached-ruleset-4.less on line 3, column 4:
2 b: 1;
3 }) {
4 @a();