233 Commits

Author SHA1 Message Date
ConnorSkees
d300cd046a Use SassError over Option inside builtins 2020-02-16 10:14:17 -05:00
ConnorSkees
d082583917 Handle negative numbers in str-slice() 2020-02-15 08:51:00 -05:00
ConnorSkees
c16d6fed4e clippy 2020-02-14 18:28:09 -05:00
ConnorSkees
f7351e1458 Implement builtin function abs() 2020-02-14 12:30:48 -05:00
ConnorSkees
089436ec9d Revert "Allow unquote on all values"
This reverts commit f4c5fbae274ddd545d34107e424fa3b9c842ea14.

This change resulted in nine regressions in the spec tests. This is a
change that we should make later when the `unquote()` function has the
correct functionality. For right now, the implementation of `unquote()` is a hack to just get
things working.
2020-02-14 10:23:43 -05:00
ConnorSkees
f4c5fbae27 Allow unquote on all values 2020-02-14 10:11:26 -05:00
ConnorSkees
65c5c209f3 Implement Rem and RemAssign for Number 2020-02-14 09:44:46 -05:00
ConnorSkees
6427a7ab81 Implement builtin function adjust-hue 2020-02-14 08:15:19 -05:00
ConnorSkees
f8a09bec6e Initial implementation of Div for Value::Dimension 2020-02-14 08:15:19 -05:00
ConnorSkees
4c70b84ed7 Calls to undefined functions should be treated as idents 2020-02-09 20:26:14 -05:00
ConnorSkees
e37179cfd7 Properly handle precision 2020-02-09 20:00:35 -05:00
ConnorSkees
7fcfeee97e clippy 2020-02-09 19:07:44 -05:00
ConnorSkees
0ec2c46744 rustfmt 2020-02-09 18:28:24 -05:00
ConnorSkees
40e1e554c7 Implement builtin functions ceil() and floor() 2020-02-09 16:14:24 -05:00
ConnorSkees
405a1c2d42 Implement mul and div for Value and builtin function percentage() 2020-02-09 16:05:07 -05:00
ConnorSkees
1269c9f662 Initial implementation of invert() (no support for weight argument) 2020-02-09 13:31:58 -05:00
ConnorSkees
8638e2f251 Implement builtin functions hue(), saturation(), and lightness() 2020-02-09 12:18:41 -05:00
ConnorSkees
835fe61bb4 Implement subtraction for colors 2020-02-09 11:07:13 -05:00
ConnorSkees
2b3d8fcce7 Implement addition between colors and idents 2020-02-09 10:49:37 -05:00
ConnorSkees
901c911b5b Handle percentages and large/small values inside rgb() and rgba() 2020-02-09 10:41:05 -05:00
ConnorSkees
5cab99cd6e Implement hsl() and hsla() functions 2020-02-09 03:13:31 -05:00
ConnorSkees
22670a7e4b Implement builtin function str-length 2020-02-08 20:38:37 -05:00
ConnorSkees
6c8dd6de93 rustfmt 2020-02-08 20:20:03 -05:00
ConnorSkees
c75e5cc553 Properly parse floating point numbers and rgba() 2020-02-08 20:07:20 -05:00
ConnorSkees
bf98382b0b Improve alpha/opacity function tests 2020-02-08 18:51:29 -05:00
ConnorSkees
44d257494a Properly print decimal numbers 2020-02-08 18:43:18 -05:00
ConnorSkees
4585558266 Add (variable|function|mixin)-exists builtin functions 2020-02-08 17:41:54 -05:00
ConnorSkees
fa582b3316 Treat - and _ as the same in identifiers 2020-02-08 17:26:01 -05:00
ConnorSkees
783e43b765 clippy 2020-02-08 17:03:43 -05:00
ConnorSkees
705ae0c810 Refactor how idents are flattened 2020-02-08 16:49:44 -05:00
ConnorSkees
3404073ed8 Refactor hex parsing 2020-02-08 16:44:42 -05:00
ConnorSkees
a139e07189 Move Value parsing to separate file 2020-02-08 16:17:58 -05:00
ConnorSkees
6471ce8f29 Refactor value 2020-02-08 16:08:54 -05:00