40 Commits

Author SHA1 Message Date
ConnorSkees
f9730b9ec5 HACK: somewhat handle unicode escapes 2020-03-22 13:45:41 -04:00
ConnorSkees
77ed737293 disallow newlines in quoted strings 2020-03-21 12:21:06 -04:00
ConnorSkees
a64dcaf394 properly bubble up parsing errors 2020-03-20 23:34:23 -04:00
ConnorSkees
061694bd63 Initial implementation of !global (some issues remain) 2020-03-17 20:13:53 -04:00
ConnorSkees
3181d58441 refactor and cleaning 2020-03-01 14:53:52 -05:00
ConnorSkees
d7b22a41a6 Properly handle & in most contexts 2020-03-01 12:03:14 -05:00
ConnorSkees
624cf06f69 clippy 2020-02-29 16:13:57 -05:00
ConnorSkees
9f81efe812 Print quotes properly when string contains quotes 2020-02-24 19:49:24 -05:00
ConnorSkees
6c5cf4b405 properly escape backslashes 2020-02-24 19:13:28 -05:00
ConnorSkees
8c6be57872 Handle curly braces in quotes in styles 2020-02-24 17:47:32 -05:00
ConnorSkees
c2e339fb5b Remove inner _parse_interpolation() 2020-02-24 17:08:49 -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
9877f4a0e0 Attribute selectors are parsed after lexing 2020-02-24 15:07:18 -05:00
ConnorSkees
e7de93bd38 Proper error message for undefined variables 2020-02-17 07:55:03 -05:00
ConnorSkees
f817598a9d Refactor error handling 2020-02-16 10:54:25 -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
44d257494a Properly print decimal numbers 2020-02-08 18:43:18 -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
6faebf5105 HACK: parse interpolations into values then tokens 2020-02-02 21:11:22 -05:00
ConnorSkees
3f929066c4 Rename eat_interpolation() to parse_interpolation() 2020-02-01 19:24:37 -05:00
ConnorSkees
d464124ae0 Handle !default 2020-01-29 21:02:32 -05:00
ConnorSkees
7975d468f1 Remove quotes from interpolation (naively) 2020-01-27 17:15:02 -05:00
ConnorSkees
c7efbc7e05 Properly interpolate values coming from variables 2020-01-26 18:43:07 -05:00
ConnorSkees
43866eb142 Refactor interpolation 2020-01-26 09:28:44 -05:00
ConnorSkees
30cac02f9c Add IsComment trait and devour_comment utils 2020-01-25 09:54:38 -05:00
ConnorSkees
296bc864fa Handle arbitrarily nested interpolation 2020-01-20 17:01:25 -05:00
ConnorSkees
d85f9d32f6 Make @import tests work 2020-01-20 16:00:37 -05:00
ConnorSkees
75f38ba416 Move #[track_caller] behind feature gate 2020-01-20 13:39:25 -05:00
ConnorSkees
25b4bebdf8 Make everything private except StyleSheet 2020-01-20 13:15:47 -05:00
ConnorSkees
635f00baa6 Handle toplevel @debug, @warn, @error 2020-01-19 00:10:37 -05:00
ConnorSkees
720b1e9f22 Reduce usage of .clone() 2020-01-18 20:24:28 -05:00
ConnorSkees
abdfa1b876 Handle interpolation in mixins 2020-01-18 09:42:25 -05:00
ConnorSkees
eaf1e8eb96 Consume whitespace after variable value 2020-01-17 21:03:01 -05:00
ConnorSkees
e3968ac047 Refactor out variable eating 2020-01-14 19:34:13 -05:00
ConnorSkees
c6fe179eeb Refactor and consolidate interpolation parsing 2020-01-14 17:39:19 -05:00
ConnorSkees
cdbd4ff9a6 Considate variable dereferencing into util function 2020-01-12 20:56:07 -05:00
ConnorSkees
33843dd2ac Refactor various devour_whitespace methods into single util function 2020-01-12 20:15:27 -05:00