265 Commits

Author SHA1 Message Date
ConnorSkees
d7b22a41a6 Properly handle & in most contexts 2020-03-01 12:03:14 -05:00
ConnorSkees
14eb173c56 Refactor unknown at rule parsing to separate file 2020-03-01 08:02:59 -05:00
ConnorSkees
286f67b984 ident addition chaining 2020-03-01 07:42:12 -05:00
ConnorSkees
547ac7415a Improve color ops error messages 2020-02-29 20:14:51 -05:00
ConnorSkees
b62b9240c0 Exit with error 2020-02-29 20:02:58 -05:00
ConnorSkees
4e7cf277e1 Improve binary op error messages 2020-02-29 20:01:43 -05:00
ConnorSkees
624cf06f69 clippy 2020-02-29 16:13:57 -05:00
ConnorSkees
82813fee6f Allow @for to include only styles 2020-02-29 15:29:04 -05:00
ConnorSkees
b85b122e3d Preserve case of keywords from, to, and through 2020-02-29 12:11:40 -05:00
ConnorSkees
e2fcfeec47 rustfmt 2020-02-28 18:32:11 -05:00
ConnorSkees
906ca62a37 By default emit double quotes 2020-02-24 20:06:07 -05:00
ConnorSkees
9f81efe812 Print quotes properly when string contains quotes 2020-02-24 19:49:24 -05:00
ConnorSkees
c4d365a124 Create spaced list when values are adjacent 2020-02-24 19:05:50 -05:00
ConnorSkees
a645424186 Refactor handling of quotes inside interpolation 2020-02-24 16:58:48 -05:00
ConnorSkees
54e71130e7 Strings containing interpolation are double quoted 2020-02-24 15:18:53 -05:00
ConnorSkees
776e6444e6 rustfmt 2020-02-24 09:37:32 -05:00
ConnorSkees
e8ee76f7dc Properly parse single quoted strings and string interpolation 2020-02-24 09:36:17 -05:00
ConnorSkees
4c3f5e24ee Handle utf8 input (a bit) 2020-02-23 07:52:14 -05:00
ConnorSkees
ef4a9e9ded Strings can start with # and don't have to be colors 2020-02-23 07:41:00 -05:00
ConnorSkees
a4cd8ae02c rustfmt 2020-02-22 11:59:33 -05:00
ConnorSkees
fa665ae55f color addition is undefined 2020-02-17 10:39:32 -05:00
ConnorSkees
844b506872 Value operations can fail 2020-02-17 10:27:04 -05:00
ConnorSkees
585011c621 Remove unwrap from FuncArgs 2020-02-17 09:29:05 -05:00
ConnorSkees
f7aacba76c Use .remove() over .get() to avoid a clone 2020-02-17 08:13:15 -05:00
ConnorSkees
e7de93bd38 Proper error message for undefined variables 2020-02-17 07:55:03 -05:00
ConnorSkees
e5bbba3462 Take self by value in eval to avoid clone in common case 2020-02-16 22:06:30 -05:00
ConnorSkees
23b90aa97e Use remove() rather than .get() to avoid a clone 2020-02-16 22:04:54 -05:00
ConnorSkees
42cbd685d3 Refactor how function call args are parsed 2020-02-16 21:34:52 -05:00
ConnorSkees
09e4537e78 Proper error in str-slice when passed float 2020-02-16 18:39:27 -05:00
ConnorSkees
3512873363 Properly print negative decimals 2020-02-16 15:30:31 -05:00
ConnorSkees
1995b5ec6e Error messages in builtins 2020-02-16 11:59:04 -05:00
ConnorSkees
f817598a9d Refactor error handling 2020-02-16 10:54:25 -05:00
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