summaryrefslogtreecommitdiff
path: root/scss/expression.py
diff options
context:
space:
mode:
authorEevee (Alex Munroe) <eevee.git@veekun.com>2013-07-31 17:09:16 -0700
committerEevee (Alex Munroe) <eevee.git@veekun.com>2013-07-31 18:57:53 -0700
commita28c9cf51625877643b761b47090ba8e5047067d (patch)
treecbdc7aa86b528493077fe18ad2872d7664c4f534 /scss/expression.py
parent70b9f8d8907259d2d79bacca6474a794057b49b0 (diff)
downloadpyscss-a28c9cf51625877643b761b47090ba8e5047067d.tar.gz
Rewrite NumberValue to handle arbitrary unit combinations.
Now matches Sass semantics much more closely, and understands intermediate units in expressions like "1px * 1px / 1px".
Diffstat (limited to 'scss/expression.py')
-rw-r--r--scss/expression.py6
1 files changed, 2 insertions, 4 deletions
diff --git a/scss/expression.py b/scss/expression.py
index 5e2a980..3314d89 100644
--- a/scss/expression.py
+++ b/scss/expression.py
@@ -67,8 +67,6 @@ class Calculator(object):
# TODO this used to test for _dequote
if m.group(1):
v = dequote(v)
- elif v is not None:
- v = to_str(v)
else:
v = m.group(0)
return v
@@ -280,7 +278,7 @@ class CallOp(Expression):
rendered_args = []
for var, value in evald_argpairs:
- rendered_value = to_str(value)
+ rendered_value = value.render()
if var is None:
rendered_args.append(rendered_value)
else:
@@ -561,7 +559,7 @@ class SassExpression(Parser):
NUM = self._scan('NUM')
if self._peek(self.atom_rsts_) == 'UNITS':
UNITS = self._scan('UNITS')
- return Literal(NumberValue(float(NUM), type=UNITS))
+ return Literal(NumberValue(float(NUM), unit=UNITS))
return Literal(NumberValue(float(NUM)))
elif _token_ == 'STR':
STR = self._scan('STR')