73 Commits

Author SHA1 Message Date
Connor Skees
8b907d4b67 consolidate arg evaluation for mixins and functions 2020-07-02 10:37:13 -04:00
Connor Skees
a88f07da54 allow @content to take arguments 2020-07-02 10:31:32 -04:00
Connor Skees
4b98ec198d @media no longer consumes everything after it as children 2020-07-01 07:10:47 -04:00
Connor Skees
6ea036581b mixin stores body as Vec<Token> 2020-06-30 06:53:17 -04:00
Connor Skees
f476f4af25 no longer strip whitespace at the end of selectors
the whitespace can sometimes be part of an escape, e.g. `\ `
2020-06-30 06:43:26 -04:00
Connor Skees
0b28bb4c35 optimize common case of single style 2020-06-27 07:24:53 -04:00
ConnorSkees
369feb5c40 use clearer naming for Number variants 2020-06-26 08:47:10 -04:00
ConnorSkees
41bfea3cea update dependencies 2020-06-26 08:03:43 -04:00
ConnorSkees
1c73e5657a store reference to @content 2020-06-26 01:02:06 -04:00
ConnorSkees
17a0323da5 resolve clippy lints 2020-06-25 01:33:02 -04:00
ConnorSkees
e12d3a581d reduce size of parse::Stmt 2020-06-25 00:27:24 -04:00
ConnorSkees
177cacd9c9 commit temporary workaround for @keyframes 2020-06-24 11:41:36 -04:00
ConnorSkees
9512e9f39f improve parsing of media queries 2020-06-24 11:39:32 -04:00
ConnorSkees
7f8dc52e24 wrap extended selectors in Rc<RefCell<T>> 2020-06-23 04:28:54 -04:00
ConnorSkees
0650f0ebcf super selectors are resolved eagerly 2020-06-23 04:28:54 -04:00
ConnorSkees
e94dd80a53 change where parent selectors are resolved 2020-06-23 04:28:54 -04:00
ConnorSkees
c700845174 resolve hang on malformed input involving and and or 2020-06-22 14:18:14 -04:00
ConnorSkees
eb6f0f3451 remove superfluous lifetimes and returns 2020-06-22 12:41:59 -04:00
ConnorSkees
a3a33db47a improve selector error handling 2020-06-22 12:39:09 -04:00
ConnorSkees
aea7c9c408 deny functions with reserved names or in control flow 2020-06-22 11:35:15 -04:00
ConnorSkees
ac2d15b776 rustfmt 2020-06-22 11:08:28 -04:00
ConnorSkees
c031d42f41 change how filenames beginning with _ are tested for 2020-06-22 10:31:01 -04:00
ConnorSkees
6f4b8a935f rustfmt 2020-06-22 10:22:13 -04:00
ConnorSkees
ea0e04bfb9 eval varargs 2020-06-22 10:21:18 -04:00
ConnorSkees
082d58853b implement special-cased functions min and max 2020-06-22 10:11:30 -04:00
ConnorSkees
1362d747a4 remove superfuous &mut 2020-06-22 03:19:16 -04:00
ConnorSkees
52bf3f0091 implement short circuiting for and 2020-06-20 22:31:31 -04:00
ConnorSkees
2d990a03bd rename placeholder variable 2020-06-20 21:53:50 -04:00
ConnorSkees
07d6faf64b basic implementation of short circuiting with or op 2020-06-20 16:22:17 -04:00
ConnorSkees
d01ab0aa7d remove redundant clones of paths in @import 2020-06-20 15:53:09 -04:00
ConnorSkees
207aa1bf38 MVP implementation of @supports 2020-06-20 15:52:53 -04:00
ConnorSkees
c9a68c55b9 regress a bit on @extend for performance 2020-06-20 07:07:22 -04:00
ConnorSkees
bc1c15ad21 resolve merge conflicts 2020-06-20 06:10:48 -04:00
ConnorSkees
195079de86 initial implementation of @extend 2020-06-20 06:09:12 -04:00
ConnorSkees
47c4a421ac upgrade dependencies 2020-06-19 22:47:06 -04:00
ConnorSkees
09a322f175 resolve regression in @mixin scoping 2020-06-18 18:22:59 -04:00
ConnorSkees
1f4698378d resolve regression in function scoping 2020-06-18 18:22:59 -04:00
ConnorSkees
fe07c3d87e fix regression in mixin scoping 2020-06-18 18:22:59 -04:00
ConnorSkees
962549e31b remove most remaining unwraps 2020-06-18 18:22:58 -04:00
ConnorSkees
0352c82c88 remove unwrap from variable value parsing 2020-06-18 18:22:58 -04:00
ConnorSkees
5d5e7adb98 more accurately parse strange hex colors 2020-06-18 18:22:58 -04:00
ConnorSkees
76290a4159 further refactor parsing of hex colors 2020-06-18 18:22:58 -04:00
ConnorSkees
da8541ea75 simplify parsing of hex numbers
as suggested by @pickfire
2020-06-18 18:22:58 -04:00
ConnorSkees
51529d65ac simplify NeverEmptyVec::last, as suggested by @pickfire 2020-06-18 18:22:58 -04:00
ConnorSkees
c877eb36e3 resolve clippy lints 2020-06-18 18:22:58 -04:00
ConnorSkees
854f3c9fb2 refactor @ import
based on code review by @pickfire here,
https://github.com/connorskees/grass/pull/13
2020-06-18 18:22:58 -04:00
ConnorSkees
f16baf3366 workaround @ at-root and interpolated super selectors 2020-06-18 18:22:58 -04:00
ConnorSkees
d196a93f91 arglists are lists too 2020-06-18 18:22:58 -04:00
ConnorSkees
d3413b7cbf & is null when at root 2020-06-18 18:22:58 -04:00
ConnorSkees
86c1bb704d improve span information for at-rules 2020-06-18 18:22:58 -04:00