ConnorSkees
b081fe780b
handle escaped @ else
...
this commit makes the assumption that
https://github.com/sass/dart-sass/issues/1011 is unintended behavior
and may need to be reverted should dart-sass decide it is intended
2020-05-22 21:34:22 -04:00
ConnorSkees
2102781f62
create structure for identifiers
...
it looks like rustfmt also updated during this commit, so there are some
formatting changes
2020-05-22 18:21:18 -04:00
ConnorSkees
969726eb30
Revert string interning
...
There existed issues related to multithreaded tests that are difficult
to resolve. In the future interning may be reimplemented but in a more
limited capacity.
The motivation behind interning *values* was that it appeared checking
for named colors was responsible for much of the time lost when parsing
unquoted strings. If interning were to be reimplemented, it may make
sense to limit it solely to identifiers and style properties.
2020-05-22 14:20:31 -04:00
ConnorSkees
9a6c8ce019
add string interning
...
this seems to improve performance by ~20% as well as significantly
decrease memory usage
2020-05-21 22:46:40 -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
b58ed29fd0
add more span information
...
this resolves a lot of panics that occurred when there was no more input
2020-05-17 00:35:07 -04:00
ConnorSkees
d4f67b5ed9
clippy
2020-05-16 18:38:37 -04:00
ConnorSkees
dcdd2a1cb1
edge case in which @ include had no args AND no semicolon
2020-05-16 16:54:34 -04:00
ConnorSkees
4b15b27119
refactor mixin args
2020-05-13 23:56:47 -04:00
ConnorSkees
0cbdc67f06
improve scoping with regard to function variables existing
2020-05-13 01:32:29 -04:00
ConnorSkees
6729f24b17
Value::inspect returns cow
2020-05-06 11:50:35 -04:00
ConnorSkees
26df276266
Value::to_css_string returns a Cow<'static, str>
2020-05-05 11:08:34 -04:00
ConnorSkees
96e916e750
handle negative values in @for
2020-05-02 15:11:58 -04:00
ConnorSkees
269f37034a
clippy
2020-04-28 08:27:35 -04:00
ConnorSkees
c7ed27bb45
remove superfluous impl Display
2020-04-26 22:51:09 -04:00
ConnorSkees
003bd87caf
simplify parsing of @ for to/through
2020-04-26 22:35:06 -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
cfa734e412
allow control flow inside @content
2020-04-26 18:40:05 -04:00
ConnorSkees
ce833b7c03
proper type for @each when single variable
2020-04-26 15:02:39 -04:00
ConnorSkees
f1b60019a1
handle self referential default args
2020-04-26 13:51:49 -04:00
ConnorSkees
d49eb7e18b
explicitly enumerate missing at rule kinds
2020-04-26 01:37:51 -04:00
ConnorSkees
f60089f4f9
refactor parsing and eval of @ each
2020-04-24 22:58:28 -04:00
ConnorSkees
99ae3ae30a
test for multiline comments in subtraction
2020-04-23 19:44:20 -04:00
ConnorSkees
409ac80921
handle multiline comments surrounding @ if condition
2020-04-23 19:32:32 -04:00
ConnorSkees
69764ceaa3
allow arbitrary control flow inside @ for
2020-04-23 18:53:19 -04:00
ConnorSkees
9bb7c05d19
improve handling of @ while scoping
2020-04-23 18:14:42 -04:00
ConnorSkees
ca318d47df
properly handle @ while in functions
2020-04-23 15:23:53 -04:00
ConnorSkees
f9dfd05ea1
move check inside for loop
2020-04-23 15:16:27 -04:00
ConnorSkees
5b33b8fc74
refactor @ for to be used in @ function
2020-04-23 13:57:10 -04:00
ConnorSkees
3805eaab2b
clippy
2020-04-21 18:22:26 -04:00
ConnorSkees
38c45129d9
refactor function eval
2020-04-21 11:32:27 -04:00
ConnorSkees
b2e3322f9a
eval @each list
2020-04-21 03:19:04 -04:00
ConnorSkees
4ca6e304a5
allow at-rules other than else to follow @ if
2020-04-20 10:57:35 -04:00
ConnorSkees
4cdcf4f0d4
use peekmore rather than std::iter::Peekable
2020-04-20 03:45:28 -04:00
ConnorSkees
eb57f6f092
parse normal css atrules as unknown
2020-04-12 21:56:27 -04:00
ConnorSkees
c017ccfeb4
toplevel atrules within selectors
2020-04-12 21:47:32 -04:00
ConnorSkees
62f9f7da4f
integrate error handling with codemap
2020-04-12 19:37:12 -04:00
ConnorSkees
47330a92c6
Selector::replace takes super selector by reference
2020-04-06 14:40:28 -04:00
ConnorSkees
26fdcfdf17
interpolated ampersand in at-root
2020-04-06 14:30:36 -04:00
ConnorSkees
8802a92f9b
at-root with nothing contains super selector
2020-04-06 13:30:36 -04:00
ConnorSkees
648dc04c33
initial implementation of @ at-root
2020-04-06 13:13:03 -04:00
ConnorSkees
ef282c5c18
consolidate inspect implementations
2020-04-06 00:27:09 -04:00
ConnorSkees
4ab4f401d5
@ debug has the same output as inspect()
2020-04-06 00:23:58 -04:00
ConnorSkees
f0c1d508e6
refactor @ warn and @ debug parsing
2020-04-06 00:13:15 -04:00
ConnorSkees
44ff1c99b3
add helper function Value::from_vec
2020-04-06 00:11:18 -04:00
ConnorSkees
81e84536da
refactor @ error to just be a real error
2020-04-05 23:56:08 -04:00
ConnorSkees
b0c89ff8b9
refactor atrule kind to separate file
2020-04-05 23:37:55 -04:00
ConnorSkees
05fde03697
refactor @ for parsing to separate file
2020-04-05 23:36:24 -04:00