ConnorSkees
81aa6ee4b8
fix how equality is resolved between pseudo selectors
2020-06-23 04:28:37 -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
4bc44bdd15
use dummy value for codeblock language
2020-06-20 06:34:15 -04:00
ConnorSkees
9a5c4d0816
put no_run between ticks
2020-06-20 06:20:35 -04:00
ConnorSkees
5a97e9d09e
resolve merge conflicts
2020-06-20 06:16:42 -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
2cd81ccb0f
bump version to 0.9.0
2020-06-16 20:50:41 -04:00
Connor Skees
2ad1b70f61
Refactor parsing into struct, rather than standalone functions
...
reimplement parsing
2020-06-16 20:37:10 -04:00
ConnorSkees
c1b5ff5730
prettify imports
2020-06-16 20:00:11 -04:00
ConnorSkees
71dd7df951
reimplement parsing
2020-06-16 19:38:30 -04:00
ConnorSkees
8452fd5786
better document todo:
2020-06-14 13:53:46 -04:00
ConnorSkees
b135b87a69
resolve clippy lints
2020-06-07 23:11:43 -04:00
ConnorSkees
5dceb27950
test special case :current in is-superselector
2020-06-07 21:34:34 -04:00
ConnorSkees
b609e7a6ab
return true for is_superselector of subselector pseudos
2020-06-07 18:20:51 -04:00
ConnorSkees
457eccc59b
reimplement @ at-root
2020-06-07 17:49:39 -04:00
ConnorSkees
e76903cb47
initial implementation of selector-replace
2020-06-07 17:12:01 -04:00
ConnorSkees
e0ab71f73e
simple pseudo selector-extend tests
2020-06-07 13:27:54 -04:00
ConnorSkees
d71e996e2b
initial implementation of selector-extend
2020-06-07 11:46:34 -04:00
ConnorSkees
8390fd8354
resolve clippy lints
2020-05-31 18:21:20 -04:00
ConnorSkees
ccc0c84eee
remove all unwraps and todo! from selector parsing
2020-05-31 15:16:25 -04:00
ConnorSkees
d5844e3536
more tests for is-superselector
2020-05-31 08:01:32 -04:00
ConnorSkees
f3a58e0fa3
initial implementation of selector-* builtin fns
2020-05-31 04:51:41 -04:00
ConnorSkees
ec83a9dff7
clippy
2020-05-24 17:41:24 -04:00
ConnorSkees
3c129780d0
span_before in quoted string
2020-05-24 16:27:07 -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
737a6ba90d
emit proper error on unclosed quote
2020-05-24 10:04:30 -04:00
ConnorSkees
096abb6ca0
handle selector with nothing after colon
2020-05-24 09:07:16 -04:00
ConnorSkees
042dbfa914
remove panics from missing identifiers
2020-05-24 08:56:53 -04:00
ConnorSkees
283a2097ff
rename Value::Ident to Value::String
2020-05-22 14:35:41 -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
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
2d0a9abb13
parse selectors that grow larger from interpolation
2020-05-16 17:28:30 -04:00
ConnorSkees
769b7628d8
refactor QualifiedName into common
2020-04-26 23:52:32 -04:00
ConnorSkees
f6fd0e9af5
refactor how & is handled in values
2020-04-26 13:07:44 -04:00
ConnorSkees
690c8a1f89
clippy
2020-04-26 01:52:43 -04:00
ConnorSkees
4a2503b04c
refactor attribute parsing
2020-04-26 00:55:38 -04:00
ConnorSkees
4cdcf4f0d4
use peekmore rather than std::iter::Peekable
2020-04-20 03:45:28 -04:00
ConnorSkees
e07ceda8c7
add unit field to ident eating
2020-04-20 03:20:08 -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
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
86f2ac6a6c
remove placeholders in pseudo parens closer to correct
2020-04-05 12:52:02 -04:00
ConnorSkees
b7b58c2ac6
selector unification of pseudo parens
2020-04-05 02:39:38 -04:00
ConnorSkees
cdcb84b7b2
escape [] in attribute doc comment
2020-04-04 19:07:00 -04:00
ConnorSkees
f4efcf0b45
better error message for invalid selector characters
2020-04-03 14:14:40 -04:00