431 Commits

Author SHA1 Message Date
ConnorSkees
4cba3dfd4e handle ~ in values 2020-05-21 13:36:55 -04:00
ConnorSkees
c714d52775 handle | in values 2020-05-21 13:31:03 -04:00
ConnorSkees
c68576bb23 refactor parsing of toplevel variables 2020-05-21 13:25:37 -04:00
ConnorSkees
6b9f68922f allow non-ascii alphanumeric characters in selectors 2020-05-21 13:09:20 -04:00
ConnorSkees
b94a2403d0 fix panics related to toplevel hash and quotes 2020-05-21 12:21:52 -04:00
ConnorSkees
67091115db better handle - at the start of idents 2020-05-21 12:06:42 -04:00
ConnorSkees
709b95d035 improve span information in values 2020-05-21 11:48:38 -04:00
ConnorSkees
0c144e22ba handle ` in values 2020-05-21 01:07:34 -04:00
ConnorSkees
a63e139cd8 handle ` at toplevel 2020-05-21 01:04:11 -04:00
ConnorSkees
28d5fdf636 handle ! at toplevel 2020-05-21 01:01:02 -04:00
ConnorSkees
c1ed4b3121 handle , at toplevel 2020-05-21 00:46:06 -04:00
ConnorSkees
2faf9fcb60 improve error handling of variables in styles 2020-05-21 00:41:04 -04:00
ConnorSkees
d300d4e1fc test for ] in value 2020-05-21 00:09:52 -04:00
ConnorSkees
de2173cc31 refactor parsing of toplevel comments 2020-05-20 21:01:07 -04:00
ConnorSkees
10a30b4c65 test for comma separated list as map key 2020-05-20 20:35:59 -04:00
ConnorSkees
d39a45090a separate media and unknown at rules 2020-05-20 20:13:53 -04:00
ConnorSkees
eb7fe52074 minor cleanup 2020-05-19 18:28:18 -04:00
ConnorSkees
9a3035049a error tests for to-{upper,lower}-case 2020-05-19 00:21:43 -04:00
ConnorSkees
dae7a5028d add map fn tests for empty lists 2020-05-18 17:56:25 -04:00
ConnorSkees
f8b8025d7c fix panic when missing colon in style 2020-05-17 11:09:21 -04:00
ConnorSkees
6e7f1cc319 remove some panicking 2020-05-17 00:08:50 -04:00
ConnorSkees
eb2f3ebe5a remove ;; in tests 2020-05-16 22:46:13 -04:00
ConnorSkees
c07bb7ecce refactor == and != order of operations 2020-05-16 22:43:13 -04:00
ConnorSkees
697ff3d12f error messages for values beginnning with #
prior to this commit, error messages that occurred within idents
beginning with interpolation would be swallowed by error messages for
hex (largely, "Expected identifier.")
2020-05-16 19:25:11 -04:00
ConnorSkees
f3e7abdaba allow units to begin with escape sequences 2020-05-16 18:54:42 -04:00
ConnorSkees
2d0a9abb13 parse selectors that grow larger from interpolation 2020-05-16 17:28:30 -04:00
ConnorSkees
2db3398fe2 properly handle escaped newlines in quoted strings 2020-05-16 17:20:53 -04:00
ConnorSkees
09e6568c39 update rustfmt 2020-05-16 16:56:17 -04:00
ConnorSkees
dcdd2a1cb1 edge case in which @ include had no args AND no semicolon 2020-05-16 16:54:34 -04:00
ConnorSkees
223dade62b Emit proper error for escape sequence overflow
Before this commit, escape sequences above std::char::MAX ('\u{10ffff}')
would overflow and cause a panic. This commit replaces an `unwrap` with
`ok_or` and a clearer error message. This message will likely change
in the future in order to better conform to the `dart-sass` implementation
which currently also fails to cleanly handle this overflow.

See https://github.com/kaj/rsass/pull/73
2020-05-16 16:22:33 -04:00
ConnorSkees
eea8bdbc25 allow escapes at the start of selectors 2020-05-16 16:15:11 -04:00
ConnorSkees
374e9f9eb4 correctly parse idents starting with interpolation 2020-05-14 00:10:24 -04:00
ConnorSkees
0cbdc67f06 improve scoping with regard to function variables existing 2020-05-13 01:32:29 -04:00
ConnorSkees
425c36be86 improve tests for feature-exists 2020-05-13 00:19:21 -04:00
ConnorSkees
5b69ad2659 special functions are always lowercased 2020-05-13 00:16:36 -04:00
ConnorSkees
96e916e750 handle negative values in @for 2020-05-02 15:11:58 -04:00
ConnorSkees
1d518efeaf refactor lowercasing of idents
avoid creating more strings than necessary
2020-04-30 19:43:59 -04:00
ConnorSkees
2ee4396978 handle scientific notation in numbers 2020-04-28 12:15:10 -04:00
ConnorSkees
ce32a7e5ac explicitly test for equality 2020-04-26 23:21:18 -04:00
ConnorSkees
e1db99351a more tests for type-of 2020-04-26 23:14:22 -04:00
ConnorSkees
7db57054e1 emitting get-function is an error 2020-04-26 23:11:04 -04:00
ConnorSkees
8ddc8ab4f4 test error message for undefined mixin and variable 2020-04-26 23:01:00 -04:00
ConnorSkees
f158f03708 better handle named color transparent 2020-04-26 22:51:38 -04:00
ConnorSkees
b21bc0424f test for equality between builtin and user defined functions 2020-04-26 21:58:44 -04:00
ConnorSkees
3615835e03 allow @content in more contexts 2020-04-26 21:29:09 -04:00
ConnorSkees
6f57797c29 error inspects message 2020-04-26 19:12:36 -04:00
ConnorSkees
d53b44aafe tabs are not emitted literally 2020-04-26 19:02:43 -04:00
ConnorSkees
cfa734e412 allow control flow inside @content 2020-04-26 18:40:05 -04:00
ConnorSkees
c4de587f4e investigate feature complete inspect() 2020-04-26 18:27:08 -04:00
ConnorSkees
fb7fac5a53 empty bracketed lists are not null 2020-04-26 16:39:44 -04:00