diff options
author | Eevee (Alex Munroe) <eevee.git@veekun.com> | 2013-08-13 15:39:18 -0700 |
---|---|---|
committer | Eevee (Alex Munroe) <eevee.git@veekun.com> | 2013-08-13 15:39:27 -0700 |
commit | 75720cfe4cd7ca9c9bc9d8faeb7dd34045eefa6f (patch) | |
tree | b83f7d249dfca06102ec46e1b0b8e4f3f750c6dd | |
parent | 56b7dbb0f2e20364d702691f918c733204e397eb (diff) | |
download | pyscss-75720cfe4cd7ca9c9bc9d8faeb7dd34045eefa6f.tar.gz |
Unbreak parsing of argument-less functions.
-rw-r--r-- | scss/__init__.py | 15 | ||||
-rw-r--r-- | scss/tests/files/regressions/015-function-no-arguments.css | 3 | ||||
-rw-r--r-- | scss/tests/files/regressions/015-function-no-arguments.scss | 7 |
3 files changed, 18 insertions, 7 deletions
diff --git a/scss/__init__.py b/scss/__init__.py index cb9061c..a665d1c 100644 --- a/scss/__init__.py +++ b/scss/__init__.py @@ -616,13 +616,14 @@ class Scss(object): raise SyntaxError("Expected ')', found end of line: %r" % (block.argument,)) argstr = argstr[:-1] - calculator = Calculator(rule.namespace) - argspec_node = calculator.parse_expression(argstr, target='argspec') - - for var_name, default in argspec_node.iter_def_argspec(): - new_params.append(var_name) - if default is not None: - defaults[var_name] = default + if argstr: + calculator = Calculator(rule.namespace) + argspec_node = calculator.parse_expression(argstr, target='argspec') + + for var_name, default in argspec_node.iter_def_argspec(): + new_params.append(var_name) + if default is not None: + defaults[var_name] = default mixin = [list(new_params), defaults, block.unparsed_contents] if block.directive == '@function': diff --git a/scss/tests/files/regressions/015-function-no-arguments.css b/scss/tests/files/regressions/015-function-no-arguments.css new file mode 100644 index 0000000..3bdc1c8 --- /dev/null +++ b/scss/tests/files/regressions/015-function-no-arguments.css @@ -0,0 +1,3 @@ +h1 { + line-height: 5; +} diff --git a/scss/tests/files/regressions/015-function-no-arguments.scss b/scss/tests/files/regressions/015-function-no-arguments.scss new file mode 100644 index 0000000..273b9a5 --- /dev/null +++ b/scss/tests/files/regressions/015-function-no-arguments.scss @@ -0,0 +1,7 @@ +@function get-a-number() { + @return 5; +} + +h1 { + line-height: get-a-number(); +} |