197 Commits

Author SHA1 Message Date
Connor Skees
52ecd1e2d0 optimize ExtendedSelector::into_selector
when there is only one reference to an `ExtendedSelector`, the selector
will no longer do unnecessary cloning. this is a significant improvement
as previously we were cloning *every* selector multiple times. note that
this is optimization only occurs when the selector is being emitted.
2020-07-04 12:38:09 -04:00
Connor Skees
86d144a31b update passing tests 2020-07-03 21:21:26 -04:00
Connor Skees
0e1ea87627 update passing tests 2020-07-03 15:17:43 -04:00
Connor Skees
cf74735875
Merge pull request #14 from connorskees/value-visitor
refactor value evaluation
2020-07-03 13:58:49 -04:00
Connor Skees
9bde66c72c fmt attributes 2020-07-03 13:03:59 -04:00
Connor Skees
235836a4e0 tidy clippy lints 2020-07-03 12:56:19 -04:00
Connor Skees
596def3906 refactor value evaluation 2020-07-03 12:38:20 -04:00
Connor Skees
0c91fc323b update passing tests and changelog 2020-07-03 06:59:49 -04:00
Connor Skees
bf0665bbcd @content tokens can access local scope 2020-07-02 15:43:11 -04:00
Connor Skees
1b033c3643 properly handle chained @content 2020-07-02 15:22:15 -04:00
Connor Skees
e7fc6815c1 update passing tests 2020-07-02 10:51:49 -04:00
Connor Skees
a88f07da54 allow @content to take arguments 2020-07-02 10:31:32 -04:00
ConnorSkees
41bfea3cea update dependencies 2020-06-26 08:03:43 -04:00
ConnorSkees
6a6be73c5f make doctests pass 2020-06-26 06:40:34 -04:00
ConnorSkees
9212ff5fa1 resolve clippy lints 2020-06-26 06:12:50 -04:00
ConnorSkees
f9be622eeb put errors in Box 2020-06-26 05:12:28 -04:00
ConnorSkees
e5e3943e5c allow clippy::single_match 2020-06-24 07:05:14 -04:00
ConnorSkees
a3a33db47a improve selector error handling 2020-06-22 12:39:09 -04:00
ConnorSkees
fa04a8ac05 update date in docs 2020-06-21 04:14:57 -04:00
ConnorSkees
218d73c982 bump version to 0.9.1 2020-06-20 22:06:45 -04:00
ConnorSkees
2887016ceb tidy documentation
standardize capitalization of "Sass" and make updates to reflect new
0.9.0 API
2020-06-20 06:31:43 -04:00
ConnorSkees
195079de86 initial implementation of @extend 2020-06-20 06:09:12 -04:00
ConnorSkees
2cd81ccb0f bump version to 0.9.0 2020-06-16 20:50:41 -04:00
ConnorSkees
053dac2ecb remove stylesheet module 2020-06-16 20:03:12 -04:00
ConnorSkees
71dd7df951 reimplement parsing 2020-06-16 19:38:30 -04:00
ConnorSkees
b135b87a69 resolve clippy lints 2020-06-07 23:11:43 -04:00
ConnorSkees
8390fd8354 resolve clippy lints 2020-05-31 18:21:20 -04:00
ConnorSkees
ab61f9fb32 Merge branch 'master' into selector-fns 2020-05-31 05:38:24 -04:00
ConnorSkees
b64ad5b1f3 resolve all clippy lints 2020-05-31 05:32:19 -04:00
ConnorSkees
f3a58e0fa3 initial implementation of selector-* builtin fns 2020-05-31 04:51:41 -04:00
ConnorSkees
bb53aaab8a replace std::borrow::Cow with beef::Cow 2020-05-25 13:09:20 -04:00
ConnorSkees
6d76e1518a refactor away many unwraps 2020-05-25 00:57:59 -04:00
ConnorSkees
ec83a9dff7 clippy 2020-05-24 17:41:24 -04:00
ConnorSkees
21d830d6ff remove usage of .expect 2020-05-24 16:57:07 -04:00
ConnorSkees
8d4b4bedbe remove unwrap in peek_ident 2020-05-24 15:53:51 -04:00
ConnorSkees
e5cceb60ec track span_before when parsing values
this allows us to remove many panics on invalid input
2020-05-24 15:30:06 -04:00
ConnorSkees
3051cec45a disallow standalone @else 2020-05-24 12:47:04 -04:00
ConnorSkees
737a6ba90d emit proper error on unclosed quote 2020-05-24 10:04:30 -04:00
ConnorSkees
a01ed981ce make parsing of toplevel tokens more robust 2020-05-24 07:43:54 -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
3e5abf0587 remove keywords 2020-05-22 14:09:28 -04:00
ConnorSkees
5bed62c404 keywords are thread_local 2020-05-22 13:47:48 -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
2bd8232a00 emit proper error for toplevel " 2020-05-21 13:39:37 -04:00
ConnorSkees
b94a2403d0 fix panics related to toplevel hash and quotes 2020-05-21 12:21:52 -04:00
ConnorSkees
709b95d035 improve span information in values 2020-05-21 11:48:38 -04:00
ConnorSkees
2faf9fcb60 improve error handling of variables in styles 2020-05-21 00:41:04 -04:00
ConnorSkees
d39a45090a separate media and unknown at rules 2020-05-20 20:13:53 -04:00
ConnorSkees
f8b8025d7c fix panic when missing colon in style 2020-05-17 11:09:21 -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